真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

這篇文章主要介紹“Pandas數(shù)據(jù)查詢方法df.loc()怎么使用”,在日常操作中,相信很多人在Pandas數(shù)據(jù)查詢方法df.loc()怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Pandas數(shù)據(jù)查詢方法df.loc()怎么使用”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)建站長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為怒江州企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)怒江州網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

一、寫在前面

pandas常用的查詢函數(shù)有:df.loc(),df.iloc(),df.where(),de.query();

函數(shù)功能
df.loc()根據(jù)行,列的標(biāo)簽進(jìn)行查詢
df.iloc()根據(jù)行,列的數(shù)字位置進(jìn)行查詢
df.where()可以根據(jù)條件返回滿足需求的結(jié)果
de.query()可以根據(jù)條件返回滿足需求的結(jié)果

以上的幾種方法,都可以實(shí)現(xiàn)相同的功能,所以我們能夠熟練的掌握其中一個(gè)就好,這里我推薦df.loc(),因?yàn)檫@個(gè)函數(shù)可以實(shí)現(xiàn)的功能是最多的,一般的應(yīng)用場景,只要會這個(gè)就完全夠用了;

二、查詢方法:df.loc()

pandas通常碰到的查詢需求,有如下五種:按數(shù)值,列表,區(qū)間,條件,函數(shù)五種方法進(jìn)行查詢;

使用的數(shù)據(jù)如下,大家可以復(fù)制到本地進(jìn)行練習(xí):

Date,天氣,高溫,低溫,風(fēng)向,風(fēng)速
2020/7/16,晴,26,21,東風(fēng),2
2020/7/17,多云,25,21,西風(fēng),3
2020/7/20,小雨,24,15,東北風(fēng),5
2020/7/21,多云轉(zhuǎn)晴,22,17,東風(fēng),2
2020/7/22,多云,20,16,西風(fēng),1
2020/7/23,雷陣雨,20,20,東北風(fēng),3
2020/7/24,多云,26,17,西南風(fēng),2
2020/7/27,小雨,26,17,東風(fēng),3
2020/7/28,多云轉(zhuǎn)晴,25,24,西風(fēng),5
2020/7/29,晴,24,23,東北風(fēng),2
2020/7/30,晴,22,20,東風(fēng),2
2020/7/31,晴,26,22,東風(fēng),3
2020/8/3,晴,25,22,西風(fēng),2
2020/8/4,多云轉(zhuǎn)晴,24,16,東北風(fēng),3
2020/8/5,多云,22,14,東風(fēng),5
2020/8/6,雷陣雨,20,12,西風(fēng),2
2020/8/7,小雨,20,13,東北風(fēng),1
2020/8/10,多云轉(zhuǎn)晴,26,22,西南風(fēng),3

讀入數(shù)據(jù):

import pandas as pd
data_path_2=r"E:\VSCODE\2_numpy_pandas\pandas\data_select.csv"
df=pd.read_csv(data_path_2,encoding='gbk') # 這里因?yàn)槲沂怯肊xcel保存的csv,所以編碼格式是gbk, 大部分時(shí)候使用UTF-8

2.1 查詢單個(gè)值

通常情況下,使用df.loc()時(shí),只要傳入行列名即可返回要查詢的值,比如:我們需要查詢 2020/7/28 的天氣,可以通過:df.loc['2020-7-28','天氣'] 來查詢,然后我們會發(fā)現(xiàn)報(bào)錯:KeyError: '2020-7-28'; 這里報(bào)錯的原因是:我們在讀取數(shù)據(jù)的時(shí)候,沒有將日期設(shè)置為索引值;所以我們需要這樣做:

方法一:在讀入數(shù)據(jù)的時(shí)候設(shè)置index

import pandas as pd
data_path_2=r"E:\VSCODE\2_numpy_pandas\pandas\data_select.csv"
df=pd.read_csv(data_path_2,encoding='gbk',index_col='Date')  # 在這里設(shè)置index_col
df=df.dropna(how="all",axis='rows')
print(df.loc['2020/7/28','天氣'])

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

方法二:讀入數(shù)據(jù)后,設(shè)置index

import pandas as pd
data_path_2=r"E:\VSCODE\2_numpy_pandas\pandas\data_select.csv"
df=pd.read_csv(data_path_2,encoding='gbk')
df=df.dropna(how="all",axis='rows')
df = df.set_index(['Date'])   # 設(shè)置index
print(df.loc['2020/7/28','天氣'])

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

2.2 查詢列表對應(yīng)的值

  • 要求:需要查詢 2020/7/28 ,29,30 三天的天氣

df.loc[['2020/7/28','2020/7/29','2020/7/30'],'天氣']

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

  • 要求:需要查詢 2020/7/28 ,29,30 三天的天氣,最高溫度,最低溫度

df.loc[['2020/7/28','2020/7/29','2020/7/30'],['天氣','高溫','低溫']]

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

2.3 查詢區(qū)間內(nèi)的結(jié)果

可以使用 : 來查詢區(qū)間內(nèi)的結(jié)果,行與列均可以使用,舉例如下:

  • 要求:查詢2020/7/28 ~ 2020/8/3 的所有天氣情況;

df.loc['2020/7/28':'2020/8/3','天氣':'風(fēng)速']

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

2.4 條件查詢

  • 要求:查詢最低溫度大于22度的天氣;

df.loc[df['低溫']>22,:]  # 后面的冒號指所有的列

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

  • 要求:多條件查詢,查詢低溫小于22℃,高溫大于23℃,天氣為晴的天氣;

df.loc[(df['低溫']<22) & (df['高溫']>23) & (df['天氣']=='晴'),:]

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

2.5 按照函數(shù)要求查詢

  • 要求:查詢7月份的晴天

方法一:使用上面的條件查詢的方法

df.loc[(df.index.str.startswith('2020/7') & (df['天氣']=='晴'))]

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

方法二:使用函數(shù)查詢的方法

def func(df):
    return df.index.str.startswith('2020/7') & (df['天氣']=='晴')

df.loc[func,:]

Pandas數(shù)據(jù)查詢方法df.loc()怎么使用

到此,關(guān)于“Pandas數(shù)據(jù)查詢方法df.loc()怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!


網(wǎng)站題目:Pandas數(shù)據(jù)查詢方法df.loc()怎么使用
文章鏈接:http://weahome.cn/article/gsgijj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部