[英]How can I remove NaN values from some columns in a csv file?
我试图在python中的csv文件上做一些基本统计,我想做的是制作标题和特殊列的值的字典,但是有一些NaN值使我的代码出现以下错误
import csv
reader=csv.reader(f,delimiter=',')
import numpy as np
header=next(reader)
dataset=[]
for line in reader:
d=dict(zip(header,line))
for field in ['Reviews','Rating']:
np.isnan('Rating','Reviews')
d[field]=int(float(d[field]))
dataset.append(d)
我尝试使用numpy.isnan删除NaN值,但出现此错误
return arrays must be of ArrayType
因此,如何删除NaN值?
不知道您的数据是什么样子,但我猜NaN值是字符串
你可以做
d=dict(zip(header,[l for l in line if l != "NaN"]))
当您阅读它们以删除NaN时
但最好将您的数据样本发布出来,以便我们实际上可以看到您正在使用什么
根据NaN
值是NaN
还是"NaN"
,可以使用:
df=df.dropna() #take rows from your dataframe that are finite or not equal to NaN as NaN.
df[(df != "Nan").all(1)] # take rows from your DataFrame that does not have any "NaN" value from any column
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.