最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pandas篩選數(shù)值列和非數(shù)值列方式

 更新時(shí)間:2024年02月22日 08:38:18   作者:Kevin Davis  
這篇文章主要介紹了pandas篩選數(shù)值列和非數(shù)值列方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

pandas篩選數(shù)值列和非數(shù)值列

篩選數(shù)值類型的列

numeric_columns = df.select_dtypes(include=['number']).columns

df為dataframe類型的數(shù)據(jù)。

篩選非數(shù)值類型的列

non_numeric_columns = df.select_dtypes(exclude=['number']).columns.to_list()

含數(shù)值列就用include,不要數(shù)值列就用exclude。

Pandas常見篩選數(shù)據(jù)的五種方法其一邏輯篩選

Pandas的數(shù)據(jù)操作中,最基本的就是操作的篩選了,但是對(duì)新學(xué)員來(lái)說(shuō)的這又是一個(gè)難點(diǎn),因?yàn)榉椒ū容^多,不容易記。聊聊pandas中的一些常用的數(shù)據(jù)篩選操作。 

邏輯篩選數(shù)據(jù)

切片([ ]),loc,iloc,這三種都是支持邏輯表達(dá)式的,選其中一種比較常用的,邏輯運(yùn)算符 與或非(& | ~)any,all

展示使用的數(shù)據(jù)結(jié)構(gòu)

import pandas as pd
PATH = '/tmp/MSD0921.xlsx'
dataframe = pd.read_excel(PATH,engine='openpyxl', nrows=50)
SD1SD2SD3SD4SD5SD6SD7SD8
047212676
155555555
217111666
366322222
444444444
...........................
25815211776
25917742171
26013545556
26113555532
26217777777

1、篩選出某一列大于某一個(gè)數(shù)的所有數(shù)據(jù),例如:SD1>=7

"""篩選出SD1列中大于等于7的數(shù)據(jù)"""
dataframe[dataframe['SD1'] >= 7]

2、篩選出某一列大于或者小于另一列的輸有數(shù)據(jù),例如:SD1 < SD2

"""篩選出SD1列小于SD2列所有數(shù)據(jù)"""
dataframe.loc[dataframe['SD1'] < dataframe['SD2']]

3、篩選出某些列的值大于或小于某些值的所有數(shù)據(jù),例如:SD1 >6并且SD1<3,使用 &

"""篩選出SD1大于6,并且SD2小于3的所有數(shù)據(jù)"""
dataframe.loc[(dataframe['SD1'] > 6) & ( dataframe['SD2'] < 3)]

 4、篩選出某些列的值大于或小于某些值的所有數(shù)據(jù),例如:SD1 >6或者SD1<3,使用 |

"""篩選出SD1小于6,或者SD2小于3的所有數(shù)據(jù),并集"""
dataframe.loc[(dataframe['SD1'] > 6) | ( dataframe['SD2'] < 3)]

注意:需要注意的是在進(jìn)行或(|)、與(&)、非(~)運(yùn)算時(shí),各個(gè)獨(dú)立邏輯表達(dá)式需要用括號(hào)括起來(lái)

除了上邊的與或之外,pandas還提供了 all,any,對(duì)邏輯計(jì)算后的布爾值在進(jìn)行判斷,所有都為True,all才返回True,反之亦然,any滿足其中之一即可。all,any可傳參數(shù)axis,1為行方向,0為列方向。利用此方法可對(duì)整體數(shù)據(jù)邏輯判斷。

5、篩選出某些列的值同時(shí)大于或同時(shí)小于某值的所有數(shù)據(jù),例如SD1>6 SD2>6

"""篩選出SD1, SD2同時(shí)大于6的所有數(shù)據(jù)"""
dataframe[(dataframe.loc[:,['SD1', 'SD2']] > 6).all(1)]

 

邏輯解讀: dataframe.loc[:,['SD1', 'SD2']] > 6,這個(gè)邏輯計(jì)算的是SD1,SD2同時(shí)大于6返回的布爾值,逗號(hào)前的冒號(hào)表示所有行,返回的是False或者True的一個(gè)dataframe數(shù)據(jù),整體在進(jìn)行.all(1),操作返回的是SD1,SD2都為True的為True,否者為False所有行數(shù)。在使用切片 [ ],進(jìn)行取數(shù)據(jù)。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

荔波县| 会昌县| 海南省| 垣曲县| 华蓥市| 新宾| 定州市| 巢湖市| 醴陵市| 宜宾市| 潮安县| 阳江市| 湘乡市| 西林县| 宜章县| 兴安县| 成武县| 闽清县| 旅游| 安平县| 收藏| 双流县| 会昌县| 香港 | 扎鲁特旗| 台安县| 周至县| 隆昌县| 平邑县| 林西县| 新乡市| 吉木乃县| 壤塘县| 武川县| 文登市| 柏乡县| 石首市| 哈巴河县| 汾阳市| 开化县| 仁化县|