小編寫(xiě)這篇文章的主要目的,主要還是利用Pandas這門工具,去進(jìn)行編程等一系列的一些操作,比如可以用來(lái)進(jìn)行增刪查改等一系列的操作步驟。那么,怎么利用Pandas去查詢數(shù)據(jù)呢?下面就給大家詳細(xì)解答下。
一,Pandas查詢數(shù)據(jù)的幾種方法
df[]按行列選取,這種情況一次只能選取行或者列
df.loc方法,根據(jù)行、列的標(biāo)簽值查詢
df.iloc方法,根據(jù)行、列的數(shù)字位置查詢,根據(jù)索引定位
df.query方法
二,Pandas使用df.loc查詢數(shù)據(jù)的方法
使用單個(gè)label值查詢數(shù)據(jù)
使用值列表批量查詢
使用數(shù)值區(qū)間進(jìn)行范圍查詢
使用條件表達(dá)式查詢
調(diào)用函數(shù)查詢
注意
以上查詢方法,既適用于行,也適用于列
##########################################
df[] >>>df=pd.DataFrame(np.random.rand(25).reshape([5,5]),index=['A','B','C','D','E'],columns=['c1','c2','c3','c4','c5']) >>>df c1 c2 c3 c4 c5 A 0.499404 0.082137 0.472568 0.649200 0.121681 B 0.564688 0.102398 0.374904 0.091373 0.495510 C 0.319272 0.720225 0.979103 0.910206 0.766642 D 0.478346 0.311616 0.466326 0.045612 0.258015 E 0.421653 0.577140 0.103048 0.235219 0.550336
##########################################
#獲取c1,c2兩列
df[['c1','c2']] >>>df[['c1','c2']] c1 c2 A 0.499404 0.082137 B 0.564688 0.102398 C 0.319272 0.720225 D 0.478346 0.311616 E 0.421653 0.577140
##########################################
#獲取c1列
df.c1
>>>df.c1 A 0.499404 B 0.564688 C 0.319272 D 0.478346 E 0.421653 Name:c1,dtype:float64
##########################################
#獲取索引為A-C行數(shù)據(jù)
df['A':'C']
>>>df['A':'C'] c1 c2 c3 c4 c5 A 0.499404 0.082137 0.472568 0.649200 0.121681 B 0.564688 0.102398 0.374904 0.091373 0.495510 C 0.319272 0.720225 0.979103 0.910206 0.766642
##########################################
#獲取2-3行數(shù)據(jù)
df[1:3]
>>>df[1:3] c1 c2 c3 c4 c5 B 0.564688 0.102398 0.374904 0.091373 0.495510 C 0.319272 0.720225 0.979103 0.910206 0.766642
df.loc方法查詢
1、使用數(shù)值區(qū)間進(jìn)行范圍查詢
有點(diǎn)類似list的切片
>>>df.loc['A':'D',:] c1 c2 c3 c4 c5 A 0.499404 0.082137 0.472568 0.649200 0.121681 B 0.564688 0.102398 0.374904 0.091373 0.495510 C 0.319272 0.720225 0.979103 0.910206 0.766642 D 0.478346 0.311616 0.466326 0.045612 0.258015
##########################################
2、單個(gè)label值查詢
類似坐標(biāo)查詢
>>>df.loc['A','c2'] 0.08213716245372071
##########################################
3、使用列表批量查詢
>>>df.loc[['A','B','D'],['c1','c3']] c1 c3 A 0.499404 0.472568 B 0.564688 0.374904 D 0.478346 0.466326
##########################################
4、使用條件表達(dá)式查詢
>>>df.loc[df['c2']>0.5,:] c1 c2 c3 c4 c5 C 0.319272 0.720225 0.979103 0.910206 0.766642 E 0.421653 0.577140 0.103048 0.235219 0.550336 >>>df[(df['c2']>0.2)&(df['c3']<0.8)] c1 c2 c3 c4 c5 D 0.478346 0.311616 0.466326 0.045612 0.258015 E 0.421653 0.577140 0.103048 0.235219 0.550336
##########################################
5、使用函數(shù)查詢
def query_my_data(df): return((df['c3']>0.2)&(df["c4"]<0.8)) df.loc[query_my_data,:] c1 c2 c3 c4 c5 B 0.845310 0.545040 0.946026 0.106405 0.984376 C 0.844622 0.947104 0.878854 0.377638 0.175846 E 0.139952 0.420424 0.364295 0.012773 0.307853
##########################################
df.iloc方法查詢
同df.loc類似,根據(jù)索引定位
#提取2-3行,1-2列數(shù)據(jù)
df.iloc[1:3,0:2]
>>>df.iloc[1:3,0:2] c1 c2 B 0.564688 0.102398 C 0.319272 0.720225
##########################################
#提取第二第三行,第4列數(shù)據(jù)
df.iloc[[1,2],[3]]
c4 B 0.091373 C 0.910206
##########################################
#提取指定位置單個(gè)數(shù)值
df.iloc[3,4]
>>>df.iloc[3,4] 0.2580148841605816
綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)?lái)幫助。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/128343.html
為什么你需要pandas 大家好,今天想和大家分享一下有關(guān)pandas的學(xué)習(xí)新的,我因工作需要,從去年12月開(kāi)始接觸這個(gè)非常好用的包,到現(xiàn)在為止也是算是熟悉了一些,因此發(fā)現(xiàn)了它的強(qiáng)大之處,特意想要和朋友們分享,特別是如果你每天和excel打交道,總是需要編寫(xiě)一些vba函數(shù)或者對(duì)行列進(jìn)行g(shù)roupby啊,merge,join啊之類的,相信我,pandas會(huì)讓你解脫的。 好啦,閑話少說(shuō),這篇文章的基礎(chǔ)...
摘要:的名稱來(lái)自于面板數(shù)據(jù)和數(shù)據(jù)分析。以下的內(nèi)容主要以為主。終端輸入導(dǎo)入相關(guān)模塊是一種類似于一維數(shù)組的對(duì)象,它由一組數(shù)據(jù)各種數(shù)據(jù)類型以及一組與之相關(guān)的數(shù)據(jù)標(biāo)簽即索引組成。如果僅傳入一個(gè)序列,則會(huì)重新索引行函數(shù)的參數(shù)參數(shù)說(shuō)明用作索引的新序列。 原文鏈接 numPy pandas的數(shù)據(jù)結(jié)構(gòu)介紹 簡(jiǎn)介 Pandas [1] 是python的一個(gè)數(shù)據(jù)分析包,最初由AQR Capital Mana...
摘要:中面向行和面向列的操作基本是平衡的。用層次化索引,將其表示為更高維度的數(shù)據(jù)。使用浮點(diǎn)值表示浮點(diǎn)和非浮點(diǎn)數(shù)組中的缺失數(shù)據(jù)。索引的的格式化輸出形式選取數(shù)據(jù)子集在內(nèi)層中進(jìn)行選取層次化索引在數(shù)據(jù)重塑和基于分組的操作中很重要。 我們?cè)谏弦黄榻B了 NumPy,本篇介紹 pandas。 pandas入門 Pandas 是基于Numpy構(gòu)建的,讓以NumPy為中心的應(yīng)用變的更加簡(jiǎn)單。 pandas...
摘要:在使用之前,大多數(shù)數(shù)據(jù)分析師已經(jīng)掌握了和,并且在剛上手時(shí)會(huì)經(jīng)常習(xí)慣性想到老辦法。這種根據(jù)列值選取行數(shù)據(jù)的查詢操作,推薦使用方法。如果我又有一批數(shù)據(jù),需要將兩部分?jǐn)?shù)據(jù)合并。 大毛 豈安科技業(yè)務(wù)風(fēng)險(xiǎn)分析師 多年訂單業(yè)務(wù)反欺詐經(jīng)驗(yàn),負(fù)責(zé)豈安科技多款產(chǎn)品運(yùn)營(yíng)工作。 在使用Pandas之前,大多數(shù)數(shù)據(jù)分析師已經(jīng)掌握了Excel和SQL,并且在剛上手Pandas時(shí)會(huì)經(jīng)常習(xí)慣性想到老辦法。如果誰(shuí)能把...
摘要:數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑數(shù)據(jù)聚合與分組運(yùn)算數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑合并數(shù)據(jù)集可根據(jù)一個(gè)或多個(gè)鍵將不同中的行鏈接起來(lái)。函數(shù)根據(jù)樣本分位數(shù)對(duì)數(shù)據(jù)進(jìn)行面元?jiǎng)澐帧W值浠?,給出待分組軸上的值與分組名之間的對(duì)應(yīng)關(guān)系。 本篇內(nèi)容為整理《利用Python進(jìn)行數(shù)據(jù)分析》,博主使用代碼為 Python3,部分內(nèi)容和書(shū)本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個(gè)...
閱讀 923·2023-01-14 11:38
閱讀 896·2023-01-14 11:04
閱讀 756·2023-01-14 10:48
閱讀 2056·2023-01-14 10:34
閱讀 961·2023-01-14 10:24
閱讀 840·2023-01-14 10:18
閱讀 510·2023-01-14 10:09
閱讀 588·2023-01-14 10:02