报错内容:Error tokenizing data. C error: Expected 1 fields in line XX, saw XX
报错原因:CSV的分隔符设置异常 / 存储的时候格式有问题
解决方法:
方法一
通过csv库进行读取,再遍历,再进行合并保存 (文件不大的情况下可用),太大转置的时候RAM会hang
import pandas as pd
import csv
path = 'file_absolute_path/'
test = pd.DataFrame()
data = csv.reader(open(path, 'r'))
for d in data:
# print(d)
result = pd.DataFrame(d).T
test = pd.concat([test,result])
test = test.reset_index(drop = True)
Ref:
/qq_33267306/article/details/120284044
方法二
跳过错误的行
df = pd.read_csv(filename, error_bad_lines = False)
The error_bad_lines argument has been deprecated and will be removed in a future version.
documentation
Deprecated since version 1.3.0: The on_bad_lines parameter should be used instead to specify behavior upon encountering a bad line instead.
So, replace with:
df = pd.read_csv(filepath, error_bad_lines = 'skip')
方法三
df = pd.read_csv(filepath, delimiter = '\t')
# or
df = pd.read_csv(filepath, sep = '\t')