使用Pandas读取CSV时出错



我有一个需要分析的1亿行数据集。我使用这个函数读取文件:

csv2020=pd.read_csv('filename.txt',
sep="t",
error_bad_lines=False,
usecols=['field1', 'field2', 'field3', 'field4'],
dtype={'field1': int,'field2': float, 'field3': float, 'field4': float})

但是我得到了一个错误,其中一行不可能转换为浮点数:

ValueError:无法将字符串转换为float: 'ORCH'

我想省略发生此错误的任何行,但我不知道除了error-bad-lines参数之外如何省略。帮助吗?

谢谢!

error_bad_lines选项不是用于此目的,它只适用于不正确的字段数。

在没有dtype选项的情况下读取文件,然后使用pandas.to_numericerrors='coerce'选项进行转换:

df = pd.read_csv(…)
df['field1'] = pd.to_numeric(df['field1'], errors='coerce')
df['field2'] = …

您尝试导入为float的一些列有字符串,因此无法转换。

先读取CSV文件,不要键入"dtype...."看看你的数据框架

相关内容

  • 没有找到相关文章

最新更新