Excel有兩種格式,分別為xls和xlsx格式,兩種都可以用python的Pandas模塊的read_excel方法導入。read_excel方法返回的結果是DataFrame,DataFrame的壹列對應著Excel的壹列
read_excel方法參數介紹:
(1)sheet_name參數:該參數用於指定導入Excel中的哪壹個sheet,如果不填寫這個參數,則默認導入第壹個sheet
(2)index_col參數:該參數用於指定表格的哪壹列作為DataFrame的行索引。從0開始計數
(3)nrows參數:該參數可以控制導入的行數,該參數在導入文件體積較大時比較有用
(4)skipfooter參數:該參數可以在導入數據時,跳過表格底部的若幹行
(5)header參數:當使用Pandas的read_excel方法導入Excel文件時,默認表格的第壹行為字段名。如果表格的第壹行不是字段名。則需要使用該參數設置字段名
(6)usecols參數:該參數可以控制導入Excel表格中的哪些列
(7)names參數:該參數可以對導入數據的列名進行重命名
import pandas as pd# 導入pandas模塊並將其縮寫
df=pd.read_excel("C:/Users/kzk/Desktop/背景介紹.xlsx")#使用該方法導入數據
df
登錄後復制
括號裏為本地表格地址,可以通過查看屬性進行獲取,註意地址的分隔符時反斜杠
df1=pd.read_excel("C:/Users/kzk/Desktop/背景介紹.xlsx",index_col=0)
df1
#取消行索引
登錄後復制
df2=pd.read_excel("C:/Users/kzk/Desktop/背景介紹.xlsx",nrows=5)
df2
#導入前五行
登錄後復制
df3=pd.read_excel("C:/Users/kzk/Desktop/背景介紹.xlsx",header=None)
df3
#取消表格第壹行為默認表頭,以0123···為表頭
登錄後復制
df4=pd.read_excel("C:/Users/kzk/Desktop/背景介紹.xlsx",header=None,name=['A','B','C','D','E'])
df4
#取消表格第壹行為默認表頭,以ABCDE為表頭
登錄後復制
df5=pd.read_excel("",header=None,names={'A','B','C','D','E'},usecols=[1,3])
df5
#索引為1和3,也就是第二列和第四列
登錄後復制
2、導入CSV格式數據
read_csv方法中的sep參數表示要導入的csv文件的分隔符,默認是半角逗號。encoding參數用來指定CSV文件的編碼,常用的有utf-8h和gbk
import pandas as pd
df1=pd.read_csv("",sep=",",encoding="gbk")
df1
登錄後復制
df2=pd.read_csv("",sep=",",encoding="gbk",nrows=3)
df2
#只導入前三行
登錄後復制
df4=pd.read_csv("",sep=",",encoding="gbk",names=["ID","fruit","amount"])
df4
登錄後復制
3、導入JSON數據
JSON數據是壹種輕量級的數據交換格式,容易閱讀,也容易被機器掃描,在互聯網應用中很常見,有時候從後臺系統中導出來的數據就是JSON格式
JSON文件實際上存儲的是壹個JSON對象或者壹個JSON數組,JSON對象是由多個鍵值對組成的,類似python的字典,JSON數組由多個JSON對象組成,類似列表
import pandas as pd
json=pd.read_json("路徑")
json
登錄後復制
4、導入txt格式數據
使用read_table方法,參數和用法與read_csv類似
import pandas as pd
df1=pd.read_table("路徑")
df1
登錄後復制
5、導入(爬取)網絡數據
在數據分析中,除了可以導入文件和數據庫中的數據,還有壹類非常重要的數據就是網絡數據,網絡中每天都會產生大量數據,這些數據具有實時性,種類豐富的特點,因此對於數據分析而言是十分重要的壹類數據來源
關鍵技術:爬取網絡表格類數據,pandsa庫read_html()方法
read_html()方法用於導入帶有table標簽的網頁表格數據,使用該方法前,首先要確定網頁表格數據是否為table標簽。右擊網頁中的表格查看元素
確定後才可以使用read_html的方法
常用參數說明如下
io:字符串,文件路徑,也可以是URL連接,網址不接受/stock/a/
import pandas as pd
url="/stock/a/"
df=pd.read_html(url)[0]#索引為0
print(df)
登錄後復制
0 1 2 3
0 排名 股票代碼 企業簡稱 營業收入(億元)
1 1 600028 中國石化 27408.84
2 2 601857 中國石油 26143.49
3 3 601668 中國建築 18913.39
4 4 601318 中國平安 11804.44
5 5 601390 中國中鐵 10704.17
6 6 601186 中國鐵建 10200.10
7 7 601398 工商銀行 9427.62
8 8 601628 中國人壽 8585.05
9 9 600941 中國移動 8482.58
10 10 601939 建設銀行 8242.46
登錄後復制
2.2輸出數據
1、CSV格式數據輸出
例導入sales.csv文件中的前10行數據,並將其導出為sales_new.csv文件
關鍵技術:pandas庫中的to_csv方法
在該例中,首先通過pandas庫的read_casv方法導入sales.csv文件的前十行數據,然後使用pandas庫的to_csv方法將導出的數據輸出為sales_new.csv文件
import pandas as pd
df=pd.read_csv("地址",sep=","encoding="gbk",nrows=10)
df.to_csv('sales_new.csv',encoding="gbk")
登錄後復制
pandas庫的to_csv方法,參數說明:
path_or_buf:要保存的路徑及文件名
sep:分割符,默認為","
columns:指定要輸出的列,用列名,列表表示,默認值為None
header:是否輸出列名,默認值為True
index:是否輸出索引,默認值為True
encoding:編碼方式,默認值為"utf-8" 也可以是gbk
例對於上壹小節中的問日,如銷售文件格式為:sales.xlsx文件,如何處理
關鍵技術:DataFrame對象的to_excel方法
與上例相似,該例首先利用Pandas庫的read_excel方法讀入sales.xlsx文件,然後使用to_excel方法導出新文件
import pandas as pd
df=pd.read_excel("地址")
df1=df.head(10)
df1.to_excel('sales_new.xlsx',encoding="gbk")
登錄後復制
2、xlsx格式數據輸出
對於Pandas庫中的to_excel()方法,有下列參數說明
sheet_name:字符串,默認值為"sheet1",指包含DataFrame數據的表的名稱
np_rep:字符串,默認值為’'。指缺失數據的表示方式
columes:序列,可選參數,要編輯的列
header:布爾型或字符串列表,默認值為True。如果給定字符串列表,則表示它是列名稱的別名
index:布爾型,默認值為True 行名(索引)
index_label:字符串型或序列,默認值為None。如果文件數據過多的使用多索引,則需使用序列
encoding:指定Excel文件的編碼方式,默認值為None
3、導入到多個sheet頁中
例將sale.xlsx文件中的前十行數據,導出到sales_new.xlsx文件中名為df1的sheet頁中將後五行數據導出到名為df2的sheet頁中
首先建立df1/df2sheet頁,然後使用pd.ExcelWriter方法打開sales_new.xlsx文件,再用to_excel方法導入到指定的sheet頁中