本篇文章為大家帶來了關於python的相關知識,其中主要介紹了關於數據分析基礎的一些問題,包括了讀取其他文件、數據透視表等相關內容,下面一起來看一下,希望對大家有幫助。
推薦學習:python影片教學
接下來我們讀取三類文件csvtsvtxt文件,值得注意的是讀取這三類文件時使用的都是同一個方法,即pd.read_csv(file),讀取時為excel表時需注意分隔符,使用參數sep=''分隔。接下來我們一起來看看在excel和pandas種如何操作的吧!
從excel匯入外部資料
匯入csv檔案時,分隔符號選擇逗號即可。
#導入tsv文件,分隔符號選擇tab鍵
匯入txt檔案時,注意文字裡面是以什麼符號分隔的,自訂分隔符號。
在pandas中為無論是讀取csv檔案或tsv檔案也或txt文件,都是用read_csv()的方法讀取,另外加上sep()參數來分隔。
import pandas as pd # 导入csv文件 test1 = pd.read_csv('./excel/test12.csv',index_col="ID") df1 = pd.DataFrame(test1) print(df1)
tab鍵用\t來表示
import pandas as pd # 导入tsv文件 test3 = pd.read_csv("./excel/test11.tsv",sep='\t') df3 = pd.DataFrame(test3) print(df3)
import pandas as pd # 导入txt文件 test2 = pd.read_csv("./excel/test13.txt",sep='|') df2 = pd.DataFrame(test2) print(df2)
結果:
##在excel中存在多種數據,且分為許多類型,這時使用數據透視表就會很方便也很直觀的為我們分析出各種我們想要的數據了。1.在excel中製作透視表
實例:將下列資料繪製成一個透視表,並繪製出按總類別分每年的銷售額!
#需要依照年份來分,則我們需要將date欄位拆分,把年份拆分出來。隨後在資料欄下選擇資料透視表,選擇區域即可。結果:
接著將各部分資料拖曳到各區域即可。
繪製透視表的函數為:df.pivot_lable(index,columns,values),最後將資料求和即可。結果:import pandas as pd import numpy as np pd.options.display.max_columns =999 test = pd.read_excel('./excel/test14.xlsx') df = pd.DataFrame(test) # 将年份取出并新建一个列名为年份的列 df['year'] = pd.DatetimeIndex(df['Date']).year # 绘制透视表 table = df.pivot_table(index='总类',columns='year',values='销售额',aggfunc=np.sum) df1 = pd.DataFrame(table) df1['总计'] = df1[[2011,2012,2013,2014]].sum(axis=1) print(df1)
除此之外還可以利用groupby函數來繪製資料表。這裡將總類和年份分組求銷售總額和銷售數量。結果:import pandas as pd import numpy as np pd.options.display.max_columns =999 test = pd.read_excel('./excel/test14.xlsx') df = pd.DataFrame(test) # 将年份取出并新建一个列名为年份的列 df['year'] = pd.DatetimeIndex(df['Date']).year # groupby方法 group = df.groupby(['总类','year']) s= group['销售额'].sum() c = group['ID'].count() table = pd.DataFrame({'sum':s,'total':c}) print(table)
以上是python資料分析之pandas搞定Excel表格的詳細內容。更多資訊請關注PHP中文網其他相關文章!