使用 Pandas 读取 CSV 时出错
Errors reading CSV with Pandas
我有一个包含 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:无法将字符串转换为浮点数:'ORCH'
我想省略任何发生此错误的行,但我不知道除了 error-bad-lines 参数之外的方法。帮忙?
谢谢!
您尝试导入为浮点数的某些列包含字符串,因此无法转换。
先阅读没有“dtype....”的 CSV,然后查看您的数据框
error_bad_lines
选项不是用于此目的,它仅适用于不正确数量的字段。
不使用 dtype
选项读取您的文件,然后使用 pandas.to_numeric
和 errors='coerce'
选项进行转换:
df = pd.read_csv(…)
df['field1'] = pd.to_numeric(df['field1'], errors='coerce')
df['field2'] = …
我有一个包含 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:无法将字符串转换为浮点数:'ORCH'
我想省略任何发生此错误的行,但我不知道除了 error-bad-lines 参数之外的方法。帮忙?
谢谢!
您尝试导入为浮点数的某些列包含字符串,因此无法转换。
先阅读没有“dtype....”的 CSV,然后查看您的数据框
error_bad_lines
选项不是用于此目的,它仅适用于不正确数量的字段。
不使用 dtype
选项读取您的文件,然后使用 pandas.to_numeric
和 errors='coerce'
选项进行转换:
df = pd.read_csv(…)
df['field1'] = pd.to_numeric(df['field1'], errors='coerce')
df['field2'] = …