久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術(shù)干貨  > 分享在數(shù)據(jù)分析過程中最常使用的Python函數(shù)和方法

分享在數(shù)據(jù)分析過程中最常使用的Python函數(shù)和方法

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-07 00:11:07 1699287067

我們知道Pandas是Python中最廣泛使用的數(shù)據(jù)分析和操作庫。它提供了許多功能和方法,可以快速解決數(shù)據(jù)分析中數(shù)據(jù)處理問題。

為了更好的掌握Python函數(shù)的使用方法,我以客戶流失數(shù)據(jù)集為例,分享在數(shù)據(jù)分析過程中最常使用的函數(shù)和方法。

數(shù)據(jù)如下所示:

importnumpyasnp

importpandasaspd

df=pd.read_csv("Churn_Modelling.csv")

print(df.shape)

df.columns

結(jié)果輸出:

(10000,14)

Index(['RowNumber','CustomerId','Surname','CreditScore','Geography','Gender','Age','Tenure','Balance','NumOfProducts','HasCrCard','IsActiveMember','EstimatedSalary','Exited'],dtype='object')

1.刪除列

df.drop(['RowNumber','CustomerId','Surname','CreditScore'],axis=1,inplace=True)

print(df[:2])

print(df.shape)

結(jié)果輸出:

說明:「axis」參數(shù)設置為1以放置列,0設置為行?!竔nplace=True」參數(shù)設置為True以保存更改。我們減了4列,因此列數(shù)從14個減少到10列。

GeographyGenderAgeTenureBalanceNumOfProductsHasCrCard\

0FranceFemale4220.011

IsActiveMemberEstimatedSalaryExited

01101348.881

(10000,10)

2.選擇特定列

我們從csv文件中讀取部分列數(shù)據(jù)??梢允褂胾secols參數(shù)。

df_spec=pd.read_csv("Churn_Modelling.csv",usecols=['Gender','Age','Tenure','Balance'])

df_spec.head()

3.nrows

可以使用nrows參數(shù),創(chuàng)建了一個包含csv文件前5000行的數(shù)據(jù)幀。還可以使用skiprows參數(shù)從文件末尾選擇行。Skiprows=5000表示我們將在讀取csv文件時跳過前5000行。

df_partial=pd.read_csv("Churn_Modelling.csv",nrows=5000)

print(df_partial.shape)

4.樣品

創(chuàng)建數(shù)據(jù)框后,我們可能需要一個小樣本來測試數(shù)據(jù)。我們可以使用n或frac參數(shù)來確定樣本大小。

df=pd.read_csv("Churn_Modelling.csv",usecols=['Gender','Age','Tenure','Balance'])

df_sample=df.sample(n=1000)

df_sample2=df.sample(frac=0.1)

5.檢查缺失值

isna函數(shù)確定數(shù)據(jù)幀中缺失的值。通過將isna與sum函數(shù)一起使用,我們可以看到每列中缺失值的數(shù)量。

df.isna().sum()

6.使用loc和iloc添加缺失值

使用loc和iloc添加缺失值,兩者區(qū)別如下:

·loc:選擇帶標簽

·iloc:選擇索引

我們首先創(chuàng)建20個隨機索引進行選擇:

missing_index=np.random.randint(10000,size=20)

我們將使用loc將某些值更改為np.nan(缺失值)。

df.loc[missing_index,['Balance','Geography']]=np.nan

"Balance"和"Geography"列中缺少20個值。讓我們用iloc做另一個示例。

df.iloc[missing_index,-1]=np.nan

7.填充缺失值

fillna函數(shù)用于填充缺失的值。它提供了許多選項。我們可以使用特定值、聚合函數(shù)(例如均值)或上一個或下一個值。

avg=df['Balance'].mean()

df['Balance'].fillna(value=avg,inplace=True)

fillna函數(shù)的方法參數(shù)可用于根據(jù)列中的上一個或下一個值(例如方法="ffill")填充缺失值。它可以對順序數(shù)據(jù)(例如時間序列)非常有用。

8.刪除缺失值

處理缺失值的另一個方法是刪除它們。以下代碼將刪除具有任何缺失值的行。

df.dropna(axis=0,how='any',inplace=True)

9.根據(jù)條件選擇行

在某些情況下,我們需要適合某些條件的觀測值(即行)。

france_churn=df[(df.Geography=='France')&(df.Exited==1)]

france_churn.Geography.value_counts()

10.用查詢描述條件

查詢函數(shù)提供了一種更靈活的傳遞條件的方法。我們可以用字符串來描述它們。

df2=df.query('80000

df2=df.query('80000

df2=df.query('80000

11.用isin描述條件

條件可能有多個值。在這種情況下,最好使用isin方法,而不是單獨編寫值。

df[df['Tenure'].isin([4,6,9,10])][:3]

12.Groupby函數(shù)

PandasGroupby函數(shù)是一個多功能且易于使用的功能,可幫助獲取數(shù)據(jù)概述。它使瀏覽數(shù)據(jù)集和揭示變量之間的基本關(guān)系更加容易。

我們將做幾個組比函數(shù)的示例。讓我們從簡單的開始。以下代碼將基于Geography、Gender組合對行進行分組,然后給出每個組的平均流。

df[['Geography','Gender','Exited']].groupby(['Geography','Gender']).mean()

13.Groupby與聚合函數(shù)結(jié)合

agg函數(shù)允許在組上應用多個聚合函數(shù),函數(shù)的列表作為參數(shù)傳遞。

df[['Geography','Gender','Exited']].groupby(['Geography','Gender']).agg(['mean','count'])

以上內(nèi)容為大家介紹了數(shù)據(jù)分析過程中最常使用的Python函數(shù)和方法,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓機構(gòu):千鋒教育。http://m.2667701.com/

tags: python培訓
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學 138****2860 剛剛成功領(lǐng)取
王同學 131****2015 剛剛成功領(lǐng)取
張同學 133****4652 剛剛成功領(lǐng)取
李同學 135****8607 剛剛成功領(lǐng)取
楊同學 132****5667 剛剛成功領(lǐng)取
岳同學 134****6652 剛剛成功領(lǐng)取
梁同學 157****2950 剛剛成功領(lǐng)取
劉同學 189****1015 剛剛成功領(lǐng)取
張同學 155****4678 剛剛成功領(lǐng)取
鄒同學 139****2907 剛剛成功領(lǐng)取
董同學 138****2867 剛剛成功領(lǐng)取
周同學 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT