教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

python庫pandas之5種使用技巧

更新時間:2017年11月13日17時30分 來源:傳智播客 瀏覽次數:

Python 正迅速成為數據科學家們更為鐘愛的編程語言。形成該現狀的理由非常充分:Python 提供了一種覆蓋范圍更為廣闊的編程語言生態(tài)系統(tǒng),以及具有一定計算深度且性能良好的科學計算庫。


在 Python 自帶的科學計算庫中,Pandas 模塊是最適于數據科學相關操作的工具。本文著重介紹了 Python 中數據處理的5種方法。


首先導入相關模塊并加載數據集到 Python 環(huán)境中:


import pandas as pd

import numpy as np

data = pd.read_csv("***.csv", index_col="Loan_ID")


1、Apply 函數


Apply 函數是處理數據和建立新變量的常用函數之一。在向數據框的每一行或每一列傳遞指定函數后,Apply 函數會返回相應的值。這個由 Apply 傳入的函數可以是系統(tǒng)默認的或者用戶自


def num_missing(x):

return sum(x.isnull())

#Applying per column:

print "Missing values per column:"

print data.apply(num_missing, axis=0)


2、填補缺失值


fillna() 函數可一次性完成填補功能。它可以利用所在列的均值/眾數/中位數來替換該列的缺失數據。下面利用“Gender”、“Married”、和“Self_Employed”列中各自的眾數值填補對應列的缺失數據。


from scipy.stats import mode

mode(data['Gender'])


3、 數據透視表


Pandas 可建立 MS Excel 類型的數據透視表。例如在下文的代碼段里,關鍵列“LoanAmount” 存在缺失值。我們可以根據“Gender”,“Married”和“Self_Employed”分組后的平均金額來替換。 “LoanAmount”的各組均值可由如下方法確定


4、復合索引


如果您注意觀察#3計算的輸出內容,會發(fā)現它有一個奇怪的性質。即每個索引均由三個數值的組合構成,稱為復合索引。它有助于運算操作的快速進行。


從#3的例子繼續(xù)開始,已知每個分組數據值但還未進行數據填補。具體的填補方式可結合此前學到的多個技巧來完成。


for i,row in data.loc[data['LoanAmount'].isnull(),:].iterrows():

ind = tuple([row['Gender'],row['Married'],row['Self_Employed']])

data.loc[i,'LoanAmount'] = impute_grps.loc[ind].values[0]

#Now check the #missing values again to confirm:

print data.apply(num_missing, axis=0)


5、Crosstab 函數


該函數用于獲取數據的初始印象(直觀視圖),從而驗證一些基本假設。例如在本例中,“Credit_History”被認為會顯著影響貸款狀態(tài)。這個假設可以通過如下代碼生成的交叉表進行驗證:


pd.crosstab(data["Credit_History"],data["Loan_Status"],margins=True)
友情提示:獲得更多學科學習視頻+資料+源碼,請加QQ:3276250747。



本文版權歸傳智播客人工智能+Python學院所有,歡迎轉載,轉載請注明作者出處。謝謝!
作者:傳智播客人工智能+Python學院
0 分享到:
和我們在線交談!