Python按指定列的空值刪除行的操作代碼
1、按指定列的空值刪除行
數(shù)據(jù)準(zhǔn)備:
df = pd.DataFrame({'C1': [1, 2, 3, 4], 'C2': ['A', np.NaN, 'C', 'D'], 'C3': ['V1', 'V2', 'V3', np.NaN]}) print(df.to_string()) ''' C1 C2 C3 0 1 A V1 1 2 NaN V2 2 3 C V3 3 4 D NaN '''
我們知道,Pandas的dropna()
方法可以刪除包含空值或全為空值的行或列,例如:
# 刪除包含空值的行 df_dropna = df.dropna(how='any') print(df_dropna.to_string()) ''' C1 C2 C3 0 1 A V1 2 3 C V3 '''
那么,如何按指定列的空值刪除行而不影響其他有空值的列的空值所在的行?
# 刪除指定列值為空的行,例如,刪除C3列值為NaN的行 df.drop(df[df['C3'].isna()].index, inplace=True) print(df.to_string()) ''' C1 C2 C3 0 1 A V1 1 2 NaN V2 2 3 C V3 '''
2、滑動窗口按指定列的值填充最前面的缺失值
Pandas實現(xiàn)類似Hive的滑動窗口如下:
# 按某列滑動(前提:DataFrame已經(jīng)按照某列(如日期列、這里的C1列)升序排序) df['V3_last'] = df['C3'].shift(1) print(df.to_string()) ''' C1 C2 C3 V3_last 0 1 A V1 None 1 2 NaN V2 V1 2 3 C V3 V2 '''
那么,滑動后,最前面的空值我們要想使用指定列的值填充應(yīng)該怎么操作呢?
# 平移后,最前面的空值使用當(dāng)前平移列(C3列)的值填充 df['V3_last_fillna'] = df['C3'].shift(1).fillna(df['C3']) print(df.to_string()) ''' C1 C2 C3 V3_last V3_last_fillna 0 1 A V1 None V1 1 2 NaN V2 V1 V1 2 3 C V3 V2 V2 '''
到此這篇關(guān)于Python如何按指定列的空值刪除行?的文章就介紹到這了,更多相關(guān)Python刪除行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用execjs執(zhí)行包含中文參數(shù)的JavaScript
爬蟲的開發(fā)過程中,往往需要對JS進(jìn)行模擬,簡單或者通用的還可以在Python中模擬或者找到對應(yīng)的第三方庫,但是復(fù)雜的就可能不好實現(xiàn)了,下面這篇文章主要給大家介紹了關(guān)于Python使用execjs執(zhí)行包含中文參數(shù)的JavaScript的相關(guān)資料,需要的朋友可以參考下2022-03-03python中l(wèi)ogging庫的使用總結(jié)
Python的logging模塊提供了通用的日志系統(tǒng),可以方便第三方模塊或者是應(yīng)用使用,下面這篇文章主要給大家介紹了關(guān)于python中l(wèi)ogging庫使用的一些知識總結(jié),文中給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒,下面來一起看看吧。2017-10-10在echarts中圖例legend和坐標(biāo)系grid實現(xiàn)左右布局實例
這篇文章主要介紹了在echarts中圖例legend和坐標(biāo)系grid實現(xiàn)左右布局實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05Ubuntu下使用python讀取doc和docx文檔的內(nèi)容方法
今天小編就為大家分享一篇Ubuntu下使用python讀取doc和docx文檔的內(nèi)容方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05Python的ORM框架中SQLAlchemy庫的查詢操作的教程
這篇文章主要介紹了Python的ORM框架中SQLAlchemy庫的查詢操作的教程,SQLAlchemy用來操作數(shù)據(jù)庫十分方便,需要的朋友可以參考下2015-04-04