python如何刪除列為空的行
1.摘要
dropna()方法,能夠找到DataFrame類型數(shù)據(jù)的空值(缺失值),將空值所在的行/列刪除后,將新的DataFrame作為返回值返回。
2.函數(shù)詳解
函數(shù)形式:dropna(axis=0, how=’any’, thresh=None, subset=None, inplace=False)
參數(shù):
axis:軸。0或’index’,表示按行刪除;1或’columns’,表示按列刪除。
how:篩選方式。‘a(chǎn)ny’,表示該行/列只要有一個(gè)以上的空值,就刪除該行/列;‘a(chǎn)ll’,表示該行/列全部都為空值,就刪除該行/列。
thresh:非空元素最低數(shù)量。int型,默認(rèn)為None。如果該行/列中,非空元素?cái)?shù)量小于這個(gè)值,就刪除該行/列。
subset:子集。列表,元素為行或者列的索引。如果axis=0或者‘index’,subset中元素為列的索引;如果axis=1或者‘column’,subset中元素為行的索引。由subset限制的子區(qū)域,是判斷是否刪除該行/列的條件判斷區(qū)域。
inplace:是否原地替換。布爾值,默認(rèn)為False。如果為True,則在原DataFrame上進(jìn)行操作,返回值為None。
3.示例
創(chuàng)建DataFrame數(shù)據(jù):
import numpy as npimport pandas as pda = np.ones((11,10))for i in range(len(a)): a[i,:i] = np.nan d = pd.DataFrame(data=a)print(d)
按行刪除:存在空值,即刪除該行
# 按行刪除:存在空值,即刪除該行print(d.dropna(axis=0, how=’any’))
按行刪除:所有數(shù)據(jù)都為空值,即刪除該行
# 按行刪除:所有數(shù)據(jù)都為空值,即刪除該行print(d.dropna(axis=0, how=’all’))
按列刪除:該列非空元素小于5個(gè)的,即刪除該列
# 按列刪除:該列非空元素小于5個(gè)的,即刪除該列print(d.dropna(axis=’columns’, thresh=5))
設(shè)置子集:刪除第0、5、6、7列都為空的行
# 設(shè)置子集:刪除第0、5、6、7列都為空的行print(d.dropna(axis=’index’, how=’all’, subset=[0,5,6,7]))
設(shè)置子集:刪除第5、6、7行存在空值的列
# 設(shè)置子集:刪除第5、6、7行存在空值的列print(d.dropna(axis=1, how=’any’, subset=[5,6,7]))
原地修改
# 原地修改print(d.dropna(axis=0, how=’any’, inplace=True))print('==============================')print(d)
實(shí)例擴(kuò)展:
代碼實(shí)現(xiàn)
import pandas as pddata = pd.read_excel(’test.xlsx’,sheet_name=’Sheet1’)datanota = data[data[’銷售人員’].notna()]print(datanota)
輸出結(jié)果
D:PythonAnacondapython.exe D:/Python/test/EASdeal/test.py城市 銷售金額 銷售人員0 北京 10000 張麗麗1 上海 50000 瀟瀟2 深圳 60000 笨笨笨3 成都 40000 達(dá)達(dá)
Process finished with exit code 0
到此這篇關(guān)于python如何刪除列為空的行的文章就介紹到這了,更多相關(guān)python刪除列為空的行方法內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
