溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

發(fā)布時(shí)間:2022-05-13 14:04:11 來(lái)源:億速云 閱讀:305 作者:iii 欄目:編程語(yǔ)言

本篇內(nèi)容主要講解“python數(shù)據(jù)分析之怎么用pandas搞定Excel表格”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“python數(shù)據(jù)分析之怎么用pandas搞定Excel表格”吧!

python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

(一)讀取其他文件

接下來(lái)我們讀取三類(lèi)文件csvtsvtxt文件,值得注意的是讀取這三類(lèi)文件時(shí)使用的都是同一個(gè)方法,即pd.read_csv(file),在讀取時(shí)為excel表時(shí)需注意分隔符,使用參數(shù)sep=''來(lái)分隔。接下來(lái)我們一起看看在excel和pandas種如何操作的吧!

1.excel讀取其他文件

從excel中導(dǎo)入外部數(shù)據(jù)
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

1.1 導(dǎo)入csv文件

導(dǎo)入csv文件時(shí),分隔符選擇逗號(hào)即可。

python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

1.2 導(dǎo)入tsv文件

導(dǎo)入tsv文件,分隔符選擇tab鍵

python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

1.3 導(dǎo)入txt文本文件

導(dǎo)入txt文件時(shí),注意文本里是以什么符號(hào)分隔的,自定義分隔符。

python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

2.pandas讀取其他文件

在pandas中為無(wú)論是讀取csv文件還是tsv文件亦或者txt文件,都是用read_csv()的方法讀取,另外加上sep()參數(shù)來(lái)分隔。

2.1 讀取csv文件

import pandas as pd

# 導(dǎo)入csv文件
test1 = pd.read_csv('./excel/test12.csv',index_col="ID")
df1 = pd.DataFrame(test1)

print(df1)

2.2 讀取tsv文件

tab鍵用\t來(lái)表示

import pandas as pd

# 導(dǎo)入tsv文件
test3 = pd.read_csv("./excel/test11.tsv",sep='\t')
df3 = pd.DataFrame(test3)

print(df3)

2.3 讀取txt文件

import pandas as pd

# 導(dǎo)入txt文件
test2 = pd.read_csv("./excel/test13.txt",sep='|')
df2 = pd.DataFrame(test2)

print(df2)

結(jié)果:
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

(二)數(shù)據(jù)透視表

在excel中存在多種數(shù)據(jù),且分為很多類(lèi)型,這時(shí)使用數(shù)據(jù)透視表就會(huì)很方便也很直觀的為我們分析出各種我們想要的數(shù)據(jù)了。
實(shí)例:將下列數(shù)據(jù)繪制成一個(gè)透視表,并繪制出按總類(lèi)分每年的銷(xiāo)售額! python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

1.在excel中制作透視表

需要按照年份來(lái)分,則我們需要將date列拆分,把年份拆分出來(lái)。隨后在數(shù)據(jù)欄下選擇數(shù)據(jù)透視表,選擇區(qū)域即可。
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格
隨后將各部分?jǐn)?shù)據(jù)拖動(dòng)到各區(qū)域即可。
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

結(jié)果:
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

這樣就在excel中完成了數(shù)據(jù)透視表的制作。

那么在pandas中要怎么實(shí)現(xiàn)這一效果呢?

2.在pandas中繪制透視表

繪制透視表的函數(shù)為:df.pivot_lable(index,columns,values),最后將數(shù)據(jù)求和即可。

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)
# 將年份取出并新建一個(gè)列名為年份的列
df['year'] = pd.DatetimeIndex(df['Date']).year
# 繪制透視表
table = df.pivot_table(index='總類(lèi)',columns='year',values='銷(xiāo)售額',aggfunc=np.sum)
df1 = pd.DataFrame(table)
df1['總計(jì)'] = df1[[2011,2012,2013,2014]].sum(axis=1)


print(df1)

結(jié)果:
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

除此之外還可以利用groupby函數(shù)來(lái)繪制數(shù)據(jù)表。這里將總類(lèi)和年份分組求銷(xiāo)售總額和銷(xiāo)售數(shù)量。

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)
# 將年份取出并新建一個(gè)列名為年份的列
df['year'] = pd.DatetimeIndex(df['Date']).year

# groupby方法
group = df.groupby(['總類(lèi)','year'])

s= group['銷(xiāo)售額'].sum()
c = group['ID'].count()

table = pd.DataFrame({'sum':s,'total':c})

print(table)

結(jié)果:
python數(shù)據(jù)分析之怎么用pandas搞定Excel表格

到此,相信大家對(duì)“python數(shù)據(jù)分析之怎么用pandas搞定Excel表格”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI