在Python中使用Pandas

2021-01-11 人工智慧遇見磐創

Pandas是一個python庫,用於處理數據、生成統計數據、聚合數據等等。在這篇文章中,我們將討論如何使用Pandas庫進行數據選擇、聚合和統計分析。

我們開始吧!

我們將使用銀行客戶流失建模數據集。數據可以在這裡找到。

https://www.kaggle.com/sanjanavoona1043/bank-churn

首先,我們導入Pandas庫,列印前五行數據:

import pandas as pddf = pd.read_csv("Bank_churn_modelling.csv")pd.set_option('display.max_columns', None)pd.set_option('display.max_rows', None)print(df.head())

數據選擇

這裡我們將考慮使用Pandas數據幀進行數據選擇。我們可以使用「[]」來選擇數據列。例如,如果要選擇「CreditScore」、「Gender」、「Age」和「Exited」,可以執行以下操作:

df_select = df[['CreditScore', 'Gender', 'Age', 'Exited']]print(df_select.head())

還可以按列值過濾原始數據幀。讓我們過濾原始數據,使其只包括40歲以上的客戶:

df_age_gt_40 = df[df['Age'] > 40]print(df_age_gt_40.head())

我們還可以篩選40歲或以下的客戶:

df_age_lte_40 = df[df['Age'] <=40]print(df_age_lte_40.head())

或者只有40歲的客戶:

df_age_e_40 = df[df['Age'] ==40]print(df_age_e_40.head())

我們也可以按類別過濾。例如,我們可以選擇「Geography」為France的數據:

df_france = df[df['Geography'] == 'France']print(df_france.head())

還可以使用「.loc[]」運算符來完成相同的任務:

df_france_loc = df.loc[df.Geography == 'France']print(df_france_loc.head())

我們還可以過濾多個分類值。我們只考慮來自德國和西班牙的客戶:

geography_list = ['Germany', 'Spain']df_germany_spain = df[df['Geography'].isin(geography_list)]print(df_germany_spain.head())

統計

我們也可以用Pandas來生成一些基本的統計數據。例如,如果我們想計算信用評分的平均值和標準差,可以執行以下操作:

mean_credit_score = df['CreditScore'].mean()print('Mean credit Score: ', mean_credit_score)std_credit_score = df['CreditScore'].std()print('Standard Deviation in Credit Score: ', std_credit_score)

還可以查看最小值和最大值:

min_credit_score = df['CreditScore'].min()print('Min credit Score: ', min_credit_score)max_credit_score = df['CreditScore'].max()print('Standard Credit Score: ', max_credit_score)

還可以計算特徵的相關性並繪製熱圖。來看看「年齡」、「信用評分」、「估計年資」和「任期」之間的相關性:

corr = df[['Age', 'CreditScore', 'EstimatedSalary', 'Tenure']].corr()print(corr)

可以使用seaborn繪製相關值的熱圖:

import seaborn as sns sns.heatmap(corr)

數據聚合

我們也可以用Pandas來收集數據。具體來說,可以使用groupby方法來生成類別級別的統計信息。例如,我們可以從原始數據生成一個新的dataframe,其中包含每個「Geography」值的平均「CreditScore」。這將使我們能夠分析和比較法國、西班牙和德國的平均信用評分:

df_groupby_mean = df.groupby('Geography')['CreditScore'].mean()print(df_groupby_mean.head())

還可以查看信用評分的標準差:

df_groupby_std = df.groupby('Geography')['CreditScore'].std()print(df_groupby_std.head())

讓我們看看另一個數字列。我們來計算每個國家的平均年齡和年齡標準差:

df_groupby_age_mean = df.groupby('Geography')['Age'].mean()print(df_groupby_age_mean.head())df_groupby_age_std = df.groupby('Geography')['Age'].std()print(df_groupby_age_std.head())

我們也可以按多個列分組:

df_groupby_multiple_category = df.groupby(['Geography', 'Gender'])['Age'].mean()print(df_groupby_multiple_category.head())

結論

本文討論了如何與Pandas庫一起執行數據選擇、數據聚合和統計分析等任務。

相關焦點

  • Python數據分析:pandas讀取和寫入數據
    使用read_csv將這三列數據讀入到DataFrame。使用cat命令顯示文件內容:import pandas as pddf = pd.read_csv('01.csv')df當使用read_table()時,運行代碼後出現一個Warning,使用的是最新的版本python3.7。
  • Pandas閃回咒!如何在Python中重寫SQL查詢?
    入門指南如果電腦中沒有pandas包,則需要先安裝一下:Conda install pandas在這個階段,我們將使用著名的Kaggle泰坦尼克數據集:https://www.kaggle.com/c/titanic/data?select=test.csv。
  • Python學習120課 pandas簡介kaggle下載數據及pandas讀取外部數據
    【每天幾分鐘,從零入門python編程的世界!】numpy的基本的東西我們學習差不多了,後面具體應用中遇到問題具體分析,然後去深入了解遇到的新的知識點就行。現在我們開始學習pandas,pandas一般用的更多,pandas是基於numpy去寫的。pandas是一個專門做數據結構和數據分析的庫。
  • 在pandas中使用pipe()提升代碼可讀性
    而在以前我撰寫的一些文章中,為大家介紹過pandas中的eval()和query()這兩個幫助我們鏈式書寫代碼,搭建數據分析工作流的實用API,再加上下面要介紹的pipe(),我們就可以將任意pandas代碼完美組織成流水線形式。2.
  • Python模塊NumPy,Pandas,matplotlib的中文文檔
    今天比較忙所以不能寫長文了作為一名數據工程師需要熟練掌握python中的這些numpy,matplotlib,pandas,sklearn,seaborn,statsmodel.模塊但是由於這些模塊的文檔都是英文的可能一些英文不好的同學學起來會比較的困難,所以我從網上給大家找到一些中文的文檔
  • Python如何使用pip正確的安裝panda庫
    本人在安裝panda時,直接在cmd輸入pip install pandas 結果安裝很久還是等來安裝失敗。經過研究了一下午,才發現使用pip安裝panda庫時要先制定路徑,然後才可以安裝,具體如下:1、找到Python應用程式,右鍵屬性,找到它的安裝位置,複製路徑:C:\Users\Administrator\AppData\Local\Programs\Python\Python37\python.exe。
  • PandaSQL:一個讓你能夠通過SQL語句進行pandas的操作的python包
    這篇文章將介紹一種在pandas的dataframe中使用SQL的python包,並且使用一個不等連結的查詢操作來介紹PandasSQL的使用方法。不等連接(Non-equi join)假設你必須連接兩個dataframe。其中一個顯示了我們對某些商品進行促銷的時間段。第二個是事務Dataframe。
  • 懂Excel也能輕鬆入門Python數據分析包pandas(二):高級篩選(上)
    數據本文示例數據如下:某學校的一份考試成績表(8科成績)人名已做脫敏處理加載數據pandas需要加載Excel數據,非常容易,如下:大部分參數上一篇文章已經有說明,這裡說說重點由於工作表中有多餘的列數據,我們只需要前10列,因此指定 usecols 參數。他接受一個列表。
  • 教你如何使用Python的27萬代碼庫
    在這篇文章中,將討論如何通過PIP命令訪問和利用PyPI。怎麼用?下面乾貨PyPI是Python開發人員的默認軟體存儲庫,用於存儲創建的Python程式語言軟體開發人員和程式設計師,以用於公開和共享其軟體。與PyPI一起,通過PyPi-Install庫,您只需使用一個函數調用就可以將Python代碼上傳到PyPI。
  • Python神器:找不到模塊怎麼辦?pip安裝器一鍵全搞定
    一個錯誤從上圖中可以看到運行編寫的python程序時,出現了ModuleNotFoundError的提示,意思python解釋器找不到名為pandas的模塊/庫 !因此該錯誤的本質原因是:系統中沒有安裝pandas模塊!那麼本文將針對於找不到模塊的這一類ModuleNotFoundError,為大家介紹一種簡單有效的解決方法——pip萬能安裝器!
  • 懂Excel輕鬆入門Python數據分析包pandas(二十七):IF函數代替者
    此系列文章收錄在:數據大宇宙 > 數據處理 > E-pd轉發本文並私信我"python",即可獲得Python資料以及更多系列文章(持續更新的)經常聽別人說 Python 在數據領域有多厲害,結果學了很長時間,連數據處理都麻煩得要死。
  • python機器學習:常用庫的介紹及安裝
    1、為了學習方便,建議大家安裝Anaconda(由於平臺不讓給出網站連結,所以具體連結直接百度搜一下就可以得到),為什麼建議使用這個軟體呢,因為安裝了這個軟體後本身就自帶了IPython、Numpy、pandas,scikit-learn等庫,不用你去在一步一步的去安裝其他的庫;並且該軟體兼容性不錯,可以在Mac OS, windows和linux上運行,一勞永逸,非常方便。
  • 6個提升效率的pandas小技巧
    pandas是python中常用的數據分析庫,出現頻率非常高,而且pandas功能之多讓人咋舌,即使pandas老手也沒法保證能高效使用pandas做數據分析。這篇文章目的梳理幾個高效實用的pandas小技巧,供大家參考。1.
  • 快速介紹Python數據分析庫pandas的基礎知識和代碼示例
    為了能夠快速查找和使用功能,使我們在進行機器學習模型時能夠達到一定流程化。我創建了這個pandas函數的備忘單。這不是一個全面的列表,但包含了我在構建機器學習模型中最常用的函數。讓我們開始吧!我們還可以使用df.to_excel()保存和寫入一個DataFrame到Excel文件或Excel文件中的一個特定表格。
  • python環境配置簡要流程
    1、下載並安裝anaconda 教程網上很多,路徑最好放在c盤,而且最好在安裝過程中勾選添加PATH。 2、下載並安裝vscode 3、下載並安裝git 注意在安裝過程中選擇將自己使用的編輯器作為默認 4、調整Anaconda 找到Anconda Prompt,選擇管理員執行,然後先添加清華源
  • 圖解四個實用的pandas函數!
    作者:Baijayanta Roy來源:towardsdatascience編譯&內容補充:早起Python在用python進行機器學習或者日常的數據處理中,pandas是最常用的Python庫之一,熟練掌握pandas是每一個數據科學家的必備技能,本文將用代碼+圖片詳解Pandas中的四個實用函數!
  • 不會Pandas怎麼行
    有一個用於數據科學的包絕對是必需的,它就是 pandas。pandas 最有趣的地方在於裡面隱藏了很多包。它是一個核心包,裡面有很多其他包的功能。這點很棒,因為你只需要使用 pandas 就可以完成工作。
  • 用R也可以跑Python了
    在R中導入一個python模塊您可以使用函數import()來導入特定的包或模塊。您在Python中創建的對象可在R中使用(反之亦然)。通過使用repl_python()函數,可以使Python和R交互。
  • Pandas的介紹與基本使用
    1、什麼是Pandas當大家談論到數據分析時,提及最多的語言就是Python和SQL,而Python之所以適合做數據分析,就是因為他有很多強大的第三方庫來協助,pandas就是其中之一,它是基於Numpy構建的,正因pandas的出現,讓Python語言也成為使用最廣泛而且強大的數據分析環境之一。
  • Python中PIP的快速指南
    無論您是Python新手還是有經驗的Python開發人員,不使用pip安裝命令是不可能編寫或開發Python應用程式的。在這篇文章中,我將對Pip進行詳細介紹。Pip是Python Package Manager的縮寫。當您在系統上安裝python時,它附帶了一組預定義的包,這些包在python標準庫中提供。