删除带有“nonetype”和字符串的行:仅保留数值

ar5n3qh5  于 2021-09-08  发布在  Java
关注(0)|答案(1)|浏览(262)

我有一个数据集,其中一列有空行和一些字符串,而我只需要保留数字行。
我尝试了以下方法:

df_3 = df_cor_inc[['Person ID','rt']]
df5 = df_3.to_csv('Documents/a.csv',index=False)
df5['rt'].apply(lambda x: pd.to_numeric(x, errors = 'coerce')).dropna()

但我得到了:attributeerror:'nonetype'对象没有属性'dropna'。
这也不起作用,因为'attributeerror:'nonetype'对象没有属性'rt':

df5[df5.rt.apply(lambda x: x.isnumeric())]

当我试图清除空行时,也会发生同样的情况,因为我有“nonetype”,所以会出现一个错误。我如何摆脱它,使我只保留该列的数值,并删除所有没有它们的行?
以下是数据的外观:

Person ID,rt
0,445   
0,445   
0,445   
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,Wait success  
1,  
1,  
1,  
1,  
1,  
1,1230  
1,1230  
1,1230  
1,1230  
1,1230  
1,1230  
1,1721  
1,1721  
1,1721  
1,1721  
1,1721  
1,1721
5sxhfpxr

5sxhfpxr1#

这里的问题是输出变量设置为 None 如果写 df_3 通过 to_csv 归档。

df5 = df_3.to_csv('Documents/a.csv',index=False)

解决方案仅适用于 df_3 比如:

df_3 = df_cor_inc[['Person ID','rt']]

# no assign to df5

df_3.to_csv('Documents/a.csv',index=False)

# assigned converted values to numeric

df_3['rt'] = pd.to_numeric(df_3['rt'], errors = 'coerce')

# removed NaNs rows by rt column

df5 = df_3.dropna(subset=['rt'])

相关问题