删除NaN行在pandas

时间:2017-07-14 21:06:37

标签: python pandas

我有一个大约7k行和4列的文件。很多单元格都是空的,我试图使用一些pandas函数删除它们,但似乎没有任何工作。我尝试过的功能和代码如下:

我尝试过:

df = df.dropna(thresh=2) 

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

我的代码:

file = "pc-dirty-data.csv"
path = root + file
name_cols = ['GUID1', 'GUID2', 'Record ID', 'Name', 'Org Name', 'Title']
pull_cols = ['Record ID', 'Name', 'Org Name', 'Title']
df = df.dropna(thresh=2) 
df.dropna(axis=0, how='all')
df = pd.read_csv(path, header=None, encoding="ISO-8859-1", names=name_cols, usecols=pull_cols, index_col=False)
df.info()

数据帧:

RangeIndex: 6599 entries, 0 to 6598
Data columns (total 4 columns):
Record ID    5874 non-null float64
Name         5874 non-null object
Org Name     5852 non-null object
Title        5615 non-null object
dtypes: float64(1), object(3)

1 个答案:

答案 0 :(得分:1)

dropna不是就地操作,您需要将其重新分配给变量或使用inplace参数设置为True。

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

df.dropna(axis=0, how='all', inplace=True)

修改

Jay在评论中指出,你需要重新排序代码逻辑,以便在read_csv之后删除它。