csv
是文本文件,用记事本就能打开,xlsx
是二进制的文件只有用excel
才能打开,如果用记事本打开是乱码- 首先,我的pandas版本为1.1.0
- 然后,使用
pd.read_excel()
读取,详细的方法参数可以看这篇博客,我就列举下其中的参数介绍吧:
-
o :excel 路径;
-
sheetname:默认是sheetname为0,返回多表使用sheetname=[0,1],若sheetname=None是返回全表 。注意:int/string返回的是dataframe,而none和list返回的是dict of dataframe。
-
header :指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None;
-
skiprows:省略指定行数的数据
-
skip_footer:省略从尾部数的行数据
-
index_col :指定列为索引列,也可以使用 u’string’
-
names:指定列的名字,传入一个list数据
- [补:] 在1.1.0版本中,可能会报错
ImportError: Missing optional dependency 'xlrd'. Install xlrd >= 1.0.0 for Excel support Use pip or conda to install xlrd.
,那就手动安装一下pip install xlrd
- [补:] 在刚开始的时候,我有想过是不是因为
编码
的原因导致pd.read_csv
不能读取xlsx
,所以尝试将文件转换为utf-8
编码
那么,首先就要知道文件的编码类型了,然后再用编码转换器转换就可以了
1.我是用apt-get install enca
来查的,当然了,这个enca
也可以直接修改编码方式:enca -L zh_CN -x utf-8 *
---->将当前路径下所有文件的编码方式改为utf-8
2.关于编码转换,可以参考这篇博客