python之电子表格的读取(read_excel函数)

对于xls与xlsx的表格数据,用read_excel函数
该函数的用法及参数含义如下:
read_exce ( io,sheet_name=0,header=0,skiprows=None,skip_footer=0,
           index_col=None,names=None,parse_cols=None,parse_dates=False,
           na_values=None,throusands=None,convert_float=True)

参数含义:

io:文件路径
sheet_name:指定表格的第几个sheet,默认第一个,可以传递整数也可以传递sheet的名称
header:是否需要将数据集的第一行用作表头,默认用作
skiprows:指定需要跳过原数据集中的起始行数
skip_footer:指定需要跳过原数据集中的末尾行数
names:如果原数据集中没有变量,可以通过该参数在数据读取时给数据框添加具体的表头
index_col:指定哪些列用作数据框的行索引(标签)
parse_cols:为True时,则尝试解析数据框中的行索引;为列表,则尝试解析对应的日期列;参数为嵌套列表,则将某些列合并为日期列;如果参数为字典,则解析对应的列(即字典中的值),并生成新的变量名(即字典中的键)
converters:通过字典的形式,指定哪些列需要转换成什么形式
na_values:指定原数据中哪些特殊值代表了缺失值
throusands:指定原数据集中的千分位符
parse_dates:该参数在函数内不再生效
convert_float:默认将所有的数值型变量转换位浮点型变量

注意:

  1. 不要将sheet_name写成sheetname,否则将提示错误:
    TypeError: read_excel() got an unexpected keyword argument 'sheetname
  2. 当一个表格有多个sheet,用sheet_name传递整数时,默认0表示第一个sheet计算机语言都是从0开始计数),所以若想读取第二个sheet时,应该赋值1而不是2。
    例如:当要读取的表格有且只有两个sheet时,你赋值2的话将提示错误:
    TypeError: read_excel() got an unexpected keyword argument ‘sheetname’。
    只有两个sheet,而你要读取第三个sheet,这就为难它了。

案例

在这里插入图片描述
待读取的数据如上图,要求:添加适当的表头;指定“未知”的值为缺失值;0开头的0部分不能省略,代码如下:

data=pd.read_excel(r'D:\Desktop\工作簿1.xlsx',
    header=None,
    names=['编号','日期','食物','价格','来源'],
    converters={0:str},
    na_values='未知')
data  #返回数据

w
完成的效果如上图所示。

参考书籍《数据分析从入门到进阶》(机械工业出版社)

感谢阅读与参考

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐