Python Pandas模塊函數(shù)是一種用于數(shù)據(jù)分析和處理的強(qiáng)大工具。它提供了許多功能,包括數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)清洗、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)分組、數(shù)據(jù)聚合等。本文將介紹一些常用的Python Pandas模塊函數(shù),以及它們在數(shù)據(jù)處理中的應(yīng)用。
創(chuàng)新互聯(lián)長期為上千多家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為鏡湖企業(yè)提供專業(yè)的成都網(wǎng)站制作、做網(wǎng)站,鏡湖網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
一、數(shù)據(jù)結(jié)構(gòu)
1. Series
Series是一種一維數(shù)組,可以存儲任意數(shù)據(jù)類型。它類似于Python的字典,其中每個(gè)元素都有一個(gè)標(biāo)簽,稱為索引。創(chuàng)建一個(gè)Series對象的方法如下:
`python
import pandas as pd
s = pd.Series([1, 2, 3, 4, 5])
print(s)
輸出結(jié)果為:
0 1
1 2
2 3
3 4
4 5
dtype: int64
2. DataFrame
DataFrame是一種二維表格數(shù)據(jù)結(jié)構(gòu),每列可以是不同的數(shù)據(jù)類型。它類似于Python中的字典,其中每個(gè)鍵對應(yīng)一個(gè)列。創(chuàng)建一個(gè)DataFrame對象的方法如下:
`python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)
print(df)
輸出結(jié)果為:
name age gender
0 Alice 25 F
1 Bob 30 M
2 Charlie 35 M
3 David 40 M
二、數(shù)據(jù)清洗和轉(zhuǎn)換
1. 讀取數(shù)據(jù)
Pandas可以讀取多種格式的數(shù)據(jù)文件,包括CSV、Excel、SQL、JSON等。讀取CSV文件的方法如下:
`python
import pandas as pd
df = pd.read_csv('data.csv')
print(df)
其中,'data.csv'是CSV文件的路徑。
2. 缺失值處理
在數(shù)據(jù)分析中,經(jīng)常會遇到缺失值。Pandas提供了一些函數(shù)來處理缺失值,如fillna()和dropna()。fillna()函數(shù)可以用指定的值填充缺失值,dropna()函數(shù)可以刪除包含缺失值的行或列。例如:
`python
import pandas as pd
import numpy as np
data = {'name': ['Alice', 'Bob', np.nan, 'David'],
'age': [25, 30, np.nan, 40],
'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)
df.fillna(0, inplace=True) # 用0填充缺失值
df.dropna(axis=0, inplace=True) # 刪除包含缺失值的行
print(df)
輸出結(jié)果為:
name age gender
0 Alice 25.0 F
1 Bob 30.0 M
3 David 40.0 M
3. 數(shù)據(jù)類型轉(zhuǎn)換
Pandas可以將數(shù)據(jù)類型轉(zhuǎn)換為指定的類型,如將字符串類型轉(zhuǎn)換為數(shù)值類型。astype()函數(shù)可以實(shí)現(xiàn)數(shù)據(jù)類型轉(zhuǎn)換。例如:
`python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': ['25', '30', '35', '40'],
'gender': ['F', 'M', 'M', 'M']}
df = pd.DataFrame(data)
df['age'] = df['age'].astype(int) # 將字符串類型轉(zhuǎn)換為整型
print(df)
輸出結(jié)果為:
name age gender
0 Alice 25 F
1 Bob 30 M
2 Charlie 35 M
3 David 40 M
三、數(shù)據(jù)分組和聚合
1. 分組
Pandas可以將數(shù)據(jù)按照指定的列進(jìn)行分組,以便進(jìn)行聚合操作。groupby()函數(shù)可以實(shí)現(xiàn)數(shù)據(jù)分組。例如:
`python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily', 'Frank'],
'age': [25, 30, 35, 40, 45, 50],
'gender': ['F', 'M', 'M', 'M', 'F', 'M'],
'salary': [5000, 6000, 7000, 8000, 9000, 10000]}
df = pd.DataFrame(data)
grouped = df.groupby('gender') # 按照gender列進(jìn)行分組
for name, group in grouped:
print(name)
print(group)
輸出結(jié)果為:
name age gender salary
0 Alice 25 F 5000
4 Emily 45 F 9000
name age gender salary
1 Bob 30 M 6000
2 Charlie 35 M 7000
3 David 40 M 8000
5 Frank 50 M 10000
2. 聚合
在對數(shù)據(jù)進(jìn)行分組后,可以對每個(gè)分組進(jìn)行聚合操作,如求和、求平均值等。agg()函數(shù)可以實(shí)現(xiàn)數(shù)據(jù)聚合。例如:
`python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily', 'Frank'],
'age': [25, 30, 35, 40, 45, 50],
'gender': ['F', 'M', 'M', 'M', 'F', 'M'],
'salary': [5000, 6000, 7000, 8000, 9000, 10000]}
df = pd.DataFrame(data)
grouped = df.groupby('gender') # 按照gender列進(jìn)行分組
result = grouped['salary'].agg(['sum', 'mean', 'max', 'min']) # 對salary列進(jìn)行聚合操作
print(result)
輸出結(jié)果為:
sum mean max min
gender
F 14000 7000 9000 5000
M 31000 7750 10000 6000
擴(kuò)展問答:
1. Pandas常用的數(shù)據(jù)結(jié)構(gòu)有哪些?
答:Pandas常用的數(shù)據(jù)結(jié)構(gòu)有Series和DataFrame。
2. Pandas如何讀取CSV文件?
答:可以使用read_csv()函數(shù)讀取CSV文件。
3. Pandas如何處理缺失值?
答:可以使用fillna()函數(shù)填充缺失值,使用dropna()函數(shù)刪除包含缺失值的行或列。
4. Pandas如何進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換?
答:可以使用astype()函數(shù)將數(shù)據(jù)類型轉(zhuǎn)換為指定的類型。
5. Pandas如何進(jìn)行數(shù)據(jù)分組和聚合?
答:可以使用groupby()函數(shù)對數(shù)據(jù)進(jìn)行分組,使用agg()函數(shù)對每個(gè)分組進(jìn)行聚合操作。
網(wǎng)頁標(biāo)題:python pandas模塊函數(shù)
文章轉(zhuǎn)載:http://muchs.cn/article38/dgpiosp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、網(wǎng)站維護(hù)、標(biāo)簽優(yōu)化、服務(wù)器托管、關(guān)鍵詞優(yōu)化、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)