如何在将csv导入python时替换所有非数字?

时间:2015-10-01 12:12:05

标签: python csv numpy

我想将 dirty csv文件导入到numpy对象中。我的数量非常少,显然不是integerfloat,因为输出的dtype不正确。

我使用的代码:

d.data = np.genfromtxt(inputtable, delimiter=";",skip_header=2, comments="@", dtype=np.float)

我想知道是否有一种简单的方法可以将所有非浮点数替换为-1,这样我就不需要在10.000+行中手动找到这些值。

1 个答案:

答案 0 :(得分:1)

您只需提供一组回调作为converters参数,documented here

  

转换器:变量,可选

     

将列数据转换为值的函数集。转换器还可用于提供缺失的默认值   data:converters = {3:lambda s:float(s或0)}。