python中pandas工具如何讀取Excel?
阿新 • • 發佈:2018-12-17
突發奇想寫一個加強記憶!
1、需要工具包
pandas包
下載pandas包:pip install pandas
在 python指令碼中調出pandas包,並命名為pd: import pandas as pd
2、資料說明
excel中資料是這樣的:
3、開始讀取資料
發現數據來源Excel中存在表頭,在讀數時考慮去除掉表頭。讀數時加入skiprows=1,即讀數時跳過一行。
結果如下:
由於資料在Excel中存在合併的情況,所以讀出的資料存在空值,採用fillna()進行填充。【data.fillna(method = 'ffill')這表示用前一個觀測值填充;data.fillna(method = 'bfill')表示用後一個值進行填充;data.fillna({'x1':1,'x2':2,'x3':3})表示使用常量進行填充不同的列,也可以使用均值或中位數進行填充相應的列】
執行結果如下:
可見app那一列都進行了用前一個觀測值填充。
為了便於操作,將資料轉化為Dataframe的形式:
df = pd.DataFrame(data) df1 = df[['日期','app','安全下載量','普通下載量']]
如何只選取app為‘cc’的資料呢?你只需要這樣
限制app = ‘cc’,結果將只有‘cc’的資料,看結果~(可以根據自己需要處理的資料進行選擇)
如果我只要app=‘cc’的20181010的資料,該如何選擇呢?在一個限制的基礎上再加一個限制;
df3 = df1.loc[df1['app'] == 'cc'].loc[df1['日期'] == 20181010]
看看結果:結果是想要的20181010且app=‘cc’的記錄。
表中有兩個資料列,安全下載量與普通下載量,如果只想分析安全下載量,該如何選取?
datalist = df1[['日期','app','安全下載量']] print(datalist)
內容超級簡單~,作為激勵第一步。