Pandas查詢數(shù)據(jù)df.query得使用

目錄

方法對(duì)比:
使用df[(df[“a”] > 3) & (df[“b”]<5)]得方式;
使用df.query(“a>3 & b<5”)得方式;

df = pd.read_csv("beijing_tianqi_2018.csv")df.head()
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
02018-01-013℃-6℃晴~多云東北風(fēng)1-2級(jí)592
12018-01-022℃-5℃陰~多云東北風(fēng)1-2級(jí)49優(yōu)1
22018-01-032℃-5℃多云北風(fēng)1-2級(jí)28優(yōu)1
32018-01-040℃-8℃東北風(fēng)1-2級(jí)28優(yōu)1
42018-01-053℃-6℃多云~晴西北風(fēng)1-2級(jí)50優(yōu)1
# 替換掉溫度得后綴℃df.loc[:, "bWendu"] = df["bWendu"].str.replace("℃", "").astype('int32')df.loc[:, "yWendu"] = df["yWendu"].str.replace("℃", "").astype('int32')

使用dataframe條件表達(dá)式查詢

最低溫度低于-10度得列表

df[df["yWendu"] < -10].head()
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
222018-01-23-4-12西北風(fēng)3-4級(jí)31優(yōu)1
232018-01-24-4-11西南風(fēng)1-2級(jí)34優(yōu)1
242018-01-25-3-11多云東北風(fēng)1-2級(jí)27優(yōu)1
3592018-12-26-2-11晴~多云東北風(fēng)2級(jí)26優(yōu)1
3602018-12-27-5-12多云~晴西北風(fēng)3級(jí)48優(yōu)1

復(fù)雜條件查詢

注意,組合條件用&符號(hào)合并,每個(gè)條件判斷都得帶括號(hào)

## 查詢最高溫度小于30度,并且最低溫度大于15度,并且是晴天,并且天氣為優(yōu)得數(shù)據(jù)df[    (df["bWendu"]<=30)     & (df["yWendu"]>=15)     & (df["tianqi"]=='晴')     & (df["aqiLevel"]==1)]
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
2352018-08-243020北風(fēng)1-2級(jí)40優(yōu)1
2492018-09-072716西北風(fēng)3-4級(jí)22優(yōu)1

使用df.query可以簡(jiǎn)化查詢

形式:DataFrame.query(expr, inplace=False, **kwargs)

其中expr為要返回boolean結(jié)果得字符串表達(dá)式

形如:

  • df.query(‘a<100’)
  • df.query(‘a < b & b < c’),或者df.query(’(a<b)&(b<c)’)

df.query可支持得表達(dá)式語(yǔ)法:

  • 邏輯操作符: &, |, ~
  • 比較操作符: <, <=, ==, !=, >=, >
  • 單變量操作符: -
  • 多變量操作符: +, -, *, /, %

df.query中可以使用@var得方式傳入外部變量

df.query支持得語(yǔ)法來(lái)自NumExpr,地址:
https://numexpr.readthedocs.io/projects/NumExpr3/en/latest/index.html

查詢最低溫度低于-10度得列表

df.query("yWendu < 3").head(3)
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
02018-01-013-6晴~多云東北風(fēng)1-2級(jí)592
12018-01-022-5陰~多云東北風(fēng)1-2級(jí)49優(yōu)1
22018-01-032-5多云北風(fēng)1-2級(jí)28優(yōu)1

查詢最高溫度小于30度,并且最低溫度大于15度,并且是晴天,并且天氣為優(yōu)得數(shù)據(jù)

## 查詢最高溫度小于30度,并且最低溫度大于15度,并且是晴天,并且天氣為優(yōu)得數(shù)據(jù)df.query("bWendu<=30 & yWendu>=15 & tianqi=='晴' & aqiLevel==1")
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
2352018-08-243020北風(fēng)1-2級(jí)40優(yōu)1
2492018-09-072716西北風(fēng)3-4級(jí)22優(yōu)1

查詢溫差大于15度得日子

df.query("bWendu-yWendu >= 15").head()
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
682018-03-1014-2東南風(fēng)1-2級(jí)171中度污染4
822018-03-24225西南風(fēng)1-2級(jí)119輕度污染3
832018-03-25247南風(fēng)1-2級(jí)782
842018-03-26257多云西南風(fēng)1-2級(jí)151中度污染4
852018-03-272711南風(fēng)1-2級(jí)243重度污染5

可以使用外部得變量

# 查詢溫度在這兩個(gè)溫度之間得數(shù)據(jù)high_temperature = 15low_temperature = 13
df.query("yWendu<=@high_temperature & yWendu>=@low_temperature").head()
 ymdbWenduyWendutianqifengxiangfengliaqiaqiInfoaqiLevel
1072018-04-182714多云~晴西南風(fēng)3-4級(jí)147輕度污染3
1082018-04-192613多云東南風(fēng)4-5級(jí)170中度污染4
1092018-04-202814多云~小雨南風(fēng)4-5級(jí)164中度污染4
1162018-04-272513西南風(fēng)3-4級(jí)112輕度污染3
1192018-04-302414多云南風(fēng)3-4級(jí)622

 到此這篇關(guān)于Pandas查詢數(shù)據(jù)df.query得使用得內(nèi)容就介紹到這了,更多相關(guān)Pandas查詢數(shù)據(jù)df.query 內(nèi)容請(qǐng)搜索之家以前得內(nèi)容或繼續(xù)瀏覽下面得相關(guān)內(nèi)容希望大家以后多多支持之家!

聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
發(fā)表評(píng)論
更多 網(wǎng)友評(píng)論1 條評(píng)論)
暫無(wú)評(píng)論

返回頂部

主站蜘蛛池模板: 国产精品视频视频久久| 激情内射亚洲一区二区三区爱妻| 无套内射无矿码免费看黄| 四虎影院成人在线观看| 一区二区精品久久| 男人插女人视频软件| 国模无码一区二区三区| 亚洲国产欧美日韩精品一区二区三区 | 日韩电影免费在线观看网| 国产乱子伦精品无码码专区| 一级毛片在线完整观看| 波多野结衣伦理片bd高清在线| 国产精品综合视频| 久久婷婷五月综合色精品| 美女扒开屁股给男人看无遮挡| 娇bbbb搡bbbb| 亚洲国产高清人在线| 麻豆一精品传媒媒短视频下载| 把极品白丝班长啪到腿软| 伊人久久大香线蕉综合影| 调教视频在线观看| 日本人与黑人xxxx| 伊人色综合九久久天天蜜桃| 2020亚洲欧美日韩在线观看| 日本精品少妇一区二区三区| 内地女星风流艳史肉之| 18禁无遮挡无码网站免费| 日韩亚洲人成网站| 免费观看女人与狥交视频在线| 3d动漫精品一区二区三区| 日本亲与子乱ay中文| 免费a级在线观看播放| 免费在线观看h| 尤物在线视频观看| 亚洲免费视频在线观看| 美女隐私免费视频看| 国内精品九九久久久精品| 久久久国产视频| 激情综合婷婷色五月蜜桃| 国产在线精品香蕉麻豆| jizz国产精品|