• <strike id="6sogq"><s id="6sogq"></s></strike>
  • <strike id="6sogq"></strike>

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

    400-811-9990
    手機(jī)站
    千鋒教育

    千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

    千鋒教育

    掃一掃進(jìn)入千鋒手機(jī)站

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

    關(guān)注千鋒學(xué)習(xí)站小程序
    隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

    上海
    • 北京
    • 鄭州
    • 武漢
    • 成都
    • 西安
    • 沈陽
    • 廣州
    • 南京
    • 深圳
    • 大連
    • 青島
    • 杭州
    • 重慶
    當(dāng)前位置:成都千鋒IT培訓(xùn)  >  技術(shù)干貨  >  分享在數(shù)據(jù)分析過程中最常使用的Python函數(shù)和方法

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

    來源:千鋒教育
    發(fā)布人:xqq
    時(shí)間: 2023-11-05 18:12:11

    我們知道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ù)設(shè)置為1以放置列,0設(shè)置為行?!竔nplace=True」參數(shù)設(shè)置為True以保存更改。我們減了4列,因此列數(shù)從14個(gè)減少到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)建了一個(gè)包含csv文件前5000行的數(shù)據(jù)幀。還可以使用skiprows參數(shù)從文件末尾選擇行。Skiprows=5000表示我們將在讀取csv文件時(shí)跳過前5000行。

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

    print(df_partial.shape)

    4.樣品

    創(chuàng)建數(shù)據(jù)框后,我們可能需要一個(gè)小樣本來測試數(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:選擇帶標(biāo)簽

    ·iloc:選擇索引

    我們首先創(chuàng)建20個(gè)隨機(jī)索引進(jìn)行選擇:

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

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

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

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

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

    7.填充缺失值

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

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

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

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

    8.刪除缺失值

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

    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描述條件

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

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

    12.Groupby函數(shù)

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

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

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

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

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

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

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

    聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

    猜你喜歡LIKE

    python delattr函數(shù)如何使用?

    2023-11-10

    python time.strptime的格式化

    2023-11-10

    pythonGIL在Python多線程的應(yīng)用

    2023-11-10

    最新文章NEW

    python中pdb模塊怎么用?

    2023-11-10

    Python如何截圖保存?

    2023-11-10

    python?中缺少module怎么辦?

    2023-11-10

    相關(guān)推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網(wǎng)友熱搜 更多>>