Pandas read_csv:将特定字符串转换为numpy.inf

时间:2016-03-29 13:24:59

标签: python pandas

我有一个csv数据文件。值为浮点数,但无限值除外,它们由字符串' INFINITE'表示。这些值可以出现在任何列中。

我想转换' INFINITE'字符串值为numpy.inf

使用numpy genfromtxt函数,我可以执行以下操作:

dataparams={'delimiter':"\t",
            'skip_header':1,
            'names':True,
            'missing_values':'INFINITE',
            'filling_values':np.inf}

data = np.genfromtxt(file,**dataparams)

我想用pandas read_csv做同样的事情。

我可以转换' INFINITE'字符串到NaN使用na_values =' INFINITE'但这不是我想要的。 Pandas文档表明pandas> 0.10支持inf值,但我无法弄清楚当我读取文件时如何进行转换。在熊猫中有一种简单的方法吗?

1 个答案:

答案 0 :(得分:0)

派对有点晚了,但在How to wrap a Python text stream to replace strings on the fly?我用TextIOBase的封套解决了这个问题。