上面那篇文章中,初步介紹了一個文本文件的讀取;接下來介紹另外一種常見的本地數據格式,那就是Excel電子表格,如果讀者在學習或者工作中需要使用Python分析某個Excel表格數據,改如何完成第一個的數據讀取呢?
1.Pandas模塊中的read_excel
方法原型:
pd.read_excel(io,sheetname=0,header=0,skiprows=None,skipfooter=None,index_col=None,names=None,parse_cols=None,parse_date=False,
na_values=None,thousands=None,convert_float=True)
io:指定電子表格的具體路徑
sheetname:指定需要讀取電子表格中的第幾個sheet,既可以傳遞整數也可以傳遞具體的Sheet名稱
header:是否需要將數據集的第一行用作表頭,默認為是需要的
skiprows:讀取數據時,指定跳過的開始行數
skipfooter:讀取數據時,指定跳過的末尾行數
index_col:指定哪些列用作數據框的行索引(標簽)
names:如果原數據集中沒有字段,可以通過該參數在數據讀取時給數據框添加具體的表頭 #如: ['Prod_Id','Prod_Name','Prod_Color','Prod_Price'] 通過列表的 形式
parse_cols:指定需要解析的字段
parse_dates:如果參數值為True,則嘗試解析數據框的行索引;如果參數為列表,則嘗試解析對應的日期列;如果參數為嵌套列表,則將某些列合並為日期列;
如果參數為字典,則解析對應的列(字典中的值),並生成新的字段名(字典中的鍵)
na_values:指定原始數據中哪些特殊值代表了缺失值
thousands:指定原始數據集中的千分位符 #同上篇
convert_float:默認將所有的數值型字段轉換為浮點型字段
converters:通過字典的形式,指定某些列需要轉換的形式 #用法:converters = {0:str} 第0列轉換為字符型
例題:如有以下Excel表格以及數據
觀察數據信息,發現以下幾點需要注意到的
該數據集反映的是兒童類服裝的產品信息。在讀取數據是需要注意兩點:
1.該表沒有表頭,如何讀取數據的同時就設置好具體的表頭;
2.數據集的第一列實際上是字符型的字段,如何避免數據讀入時自動變成數值型字段
import pandas as pd
child_cloth = pd.read_excel(io = r'D:\data_test02.xlsx', header = None,
names = ['Prod_Id','Prod_Name','Prod_Color','Prod_Price'], converters = {0:str})
child_cloth
out: