报错Expected 7 fields in line 9, saw 9

时间秒杀一切 提交于 2020-01-19 03:37:47
import pandas as pd
data = pd.read_csv('h4.txt',encoding='gb18030',header=None,sep=None,engine='python') 
print(data)

报错:

解决方法:

加参数即列名:names=['1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17'] 加几列最终就会显示几列,

错误减少直到没有。

import pandas as pd
data = pd.read_csv('h4.txt',encoding='gb18030',header=None,sep=None,engine='python',names=['1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17']) 
print(data)

成功,做下笔记。

read_csv() 接受以下常见参数:
1.filepath_or_buffer:读取文件的路径。
2.sep : 指定分隔符。如果不指定参数,则会尝试使用逗号分隔。

3.delimiter :定界符,备选分隔符(如果指定该参数,则sep参数失效)

4.engine : {‘c', ‘python'}  使用的分析引擎。可以选择C或者是python。C引擎快但是Python引擎功能更加完备。

5.skiprows :需要忽略的行数(从文件开始处算起),或需要跳过的行号列表(从0开始)。
shkiprows= 10 # 跳过前十行
6.nrows : 需要读取的行数(从文件头开始算起)。
nrows = 10 # 只去前10行

7.prefix:给列名添加前缀。如prefix="x"

8.names:指定列的名称,用列表表示。

9.error_bad_lines : boolean, default True

如果一行包含太多的列,那么默认不会返回DataFrame ,如果设置成false,那么会将改行剔除(只能在C解析器下使用)。

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!