我有一个这样的清单:
- 1 21 84.0104
- 2 22 81.9372
- 3 23 NaN
- 4 00 NaN
- 5 01 78.7023
- 6 02 80.0526
在我的代码中,我尝试将所有NaN替换为零。所以我用了Numpy isnan:
import pylab as pl
import numpy as np
from numpy import isnan
filename = "dataset"
file = open(filename)
data = []
for line in file:
data.append(line.strip('\n').strip('\t').split(' '))
NaNs = np.isnan(data)
data[NaNs] = 0
但这对我不起作用,我得到错误信息:
“NaNs = np.isnan(数据)
TypeError:未对此类型实现“
我还尝试将模块pandas与:
集成在一起import pandas as pd
但这对我也不起作用。我只得到一个“ImportError:没有名为pandas的模块”。任何人都可以帮助我理解并解决这个问题吗?谢谢!
答案 0 :(得分:1)
如果进来的数据是一个字符串,它看起来像是,你可以使用:
line.replace("NaN", "0")
这应该用NaN
替换所有0
。