<abbr id="ciwa6"><option id="ciwa6"></option></abbr>
  • <sup id="ciwa6"><kbd id="ciwa6"></kbd></sup>
    <small id="ciwa6"></small>
  • 千鋒教育-做有情懷、有良心、有品質的職業教育機構

    400-811-9990
    手機站
    千鋒教育

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

    千鋒教育

    掃一掃進入千鋒手機站

    領取全套視頻
    千鋒教育

    關注千鋒學習站小程序
    隨時隨地免費學習課程

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

    分享在數據分析過程中最常使用的Python函數和方法

    來源:千鋒教育
    發布人:xqq
    時間: 2023-11-05 18:12:11

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

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

    數據如下所示:

    importnumpyasnp

    importpandasaspd

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

    print(df.shape)

    df.columns

    結果輸出:

    (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)

    結果輸出:

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

    GeographyGenderAgeTenureBalanceNumOfProductsHasCrCard\

    0FranceFemale4220.011

    IsActiveMemberEstimatedSalaryExited

    01101348.881

    (10000,10)

    2.選擇特定列

    我們從csv文件中讀取部分列數據。可以使用usecols參數。

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

    df_spec.head()

    3.nrows

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

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

    print(df_partial.shape)

    4.樣品

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

    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函數確定數據幀中缺失的值。通過將isna與sum函數一起使用,我們可以看到每列中缺失值的數量。

    df.isna().sum()

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

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

    ·loc:選擇帶標簽

    ·iloc:選擇索引

    我們首先創建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函數用于填充缺失的值。它提供了許多選項。我們可以使用特定值、聚合函數(例如均值)或上一個或下一個值。

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

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

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

    8.刪除缺失值

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

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

    9.根據條件選擇行

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

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

    france_churn.Geography.value_counts()

    10.用查詢描述條件

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

    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函數

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

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

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

    13.Groupby與聚合函數結合

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

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

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

    聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

    猜你喜歡LIKE

    python delattr函數如何使用?

    2023-11-10

    python time.strptime的格式化

    2023-11-10

    pythonGIL在Python多線程的應用

    2023-11-10

    最新文章NEW

    python中pdb模塊怎么用?

    2023-11-10

    Python如何截圖保存?

    2023-11-10

    python?中缺少module怎么辦?

    2023-11-10

    相關推薦HOT

    更多>>

    快速通道 更多>>

    最新開班信息 更多>>

    網友熱搜 更多>>