溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python?pandas怎么刪除指定行/列數(shù)據(jù)

發(fā)布時(shí)間:2022-01-27 13:29:13 來源:億速云 閱讀:256 作者:柒染 欄目:開發(fā)技術(shù)

Python pandas怎么刪除指定行/列數(shù)據(jù),相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

1.濾除缺失數(shù)據(jù)dropna()

import pandas as pd
import numpy as np
df=pd.DataFrame({"record":[np.nan,"亞健康|潘光|45歲","疾病|張思",np.nan],"date":[np.nan,20210102,20210103,20210104]},index=["one","two","three","four"])

Python?pandas怎么刪除指定行/列數(shù)據(jù)

1)濾除含有NaN值的所有行

df.dropna()#默認(rèn)axis=0

Python?pandas怎么刪除指定行/列數(shù)據(jù)

2)濾除含有NaN值的所有列

df.dropna(axis=1)

Python?pandas怎么刪除指定行/列數(shù)據(jù)

3)濾除元素都是NaN值的行

df.dropna(axis=0,how="all")

Python?pandas怎么刪除指定行/列數(shù)據(jù)

4)濾除元素都是NaN值的列

Python?pandas怎么刪除指定行/列數(shù)據(jù)

5)濾除指定列中含有缺失的行

df.dropna(subset=["record"],axis=0)

Python?pandas怎么刪除指定行/列數(shù)據(jù)

以上如果需要在原數(shù)據(jù)上直接做更改,需設(shè)置參數(shù)inplace=True

2.刪除重復(fù)值 drop_duplicates()

df=pd.DataFrame({'state':[1,1,2,2,1,2,2],'pop':['a','b','c','d','b','c','d']})

Python?pandas怎么刪除指定行/列數(shù)據(jù)

語法:drop_duplicates(subset,keep,inplace),其中參數(shù) keep:{‘first’,‘last’,F(xiàn)alse},默認(rèn)’first’

first:保留第一次出現(xiàn)的重復(fù)項(xiàng),刪除第二次及之后出現(xiàn)的重復(fù)項(xiàng)。

last:保留最后一次出現(xiàn)的重復(fù)項(xiàng),刪除之前出現(xiàn)的重復(fù)項(xiàng)。

"false":刪除所有重復(fù)項(xiàng)。

1)keep=“first”

df.drop_duplicates(keep="first")

Python?pandas怎么刪除指定行/列數(shù)據(jù)

2)keep=“l(fā)ast”

df.drop_duplicates(keep="last")

Python?pandas怎么刪除指定行/列數(shù)據(jù)

3)keep=False

df.drop_duplicates(keep=False)

Python?pandas怎么刪除指定行/列數(shù)據(jù)

4)刪除指定列中重復(fù)項(xiàng)對(duì)應(yīng)的行

df.drop_duplicates(subset=["state"],keep="first")

Python?pandas怎么刪除指定行/列數(shù)據(jù)

以上如果需要在原數(shù)據(jù)上直接做更改,需設(shè)置參數(shù)inplace=True

3.根據(jù)指定條件刪除行列drop()

df=pd.DataFrame(np.arange(16).reshape(4,4),columns=["one","two","three","four"])

Python?pandas怎么刪除指定行/列數(shù)據(jù)

1).刪除指定列

df.drop(["one"],axis=1)

Python?pandas怎么刪除指定行/列數(shù)據(jù)

另外,也可通過del df["one"]來實(shí)現(xiàn)刪除指定列,但該方法不推薦,因?yàn)檫@默認(rèn)直接在源數(shù)據(jù)上做更改。

2).刪除指定行

df.drop([0],axis=0)

Python?pandas怎么刪除指定行/列數(shù)據(jù)

以上如果需要在原數(shù)據(jù)上直接做更改,需設(shè)置參數(shù)inplace=True

看完上述內(nèi)容,你們掌握Python pandas怎么刪除指定行/列數(shù)據(jù)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI