小编Grr*_*sss的帖子

使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

我有一个 CSV 文件,我正在使用 Python 来解析该文件。我发现文件中的某些行具有不同的列数。

001;Snow,Jon;19801201
002;Crom,Jake;19920103
003; ;Wise,Frank;19880303   <-- Invalid row
004;Wiseau,Tommy;4324;1323;2323  <-- Invalid row
Run Code Online (Sandbox Code Playgroud)

我想将这些无效行写入单独的文本文件中。

我使用这行代码从文件中读取。

df = pd.read_csv('names.csv', header=None,sep=';')
Run Code Online (Sandbox Code Playgroud)

我在这里找到的一种解决方案是使用以下代码跳过有问题的行:

data = pd.read_csv('file1.csv', on_bad_lines='skip')
Run Code Online (Sandbox Code Playgroud)

我可以从“跳过”更改为“警告”,这将给出有问题的行的行号并跳过该行。但这将返回警告消息,而不是行本身。

python csv pandas

2
推荐指数
1
解决办法
2082
查看次数

标签 统计

csv ×1

pandas ×1

python ×1