日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
推薦5個實用的Pandas技巧

 介紹

效率已成為及時完成工作的關鍵因素。一個人不應該花超過合理的時間去完成事情。尤其是當任務涉及基本編碼時。使用Pandas庫能節(jié)省你的時間。

創(chuàng)新互聯(lián)建站長期為1000多家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為興山企業(yè)提供專業(yè)的做網(wǎng)站、成都網(wǎng)站制作,興山網(wǎng)站改版等技術服務。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

Pandas是一個開源包。它有助于用Python語言執(zhí)行數(shù)據(jù)分析和數(shù)據(jù)操作。此外,它還為我們提供了靈活的數(shù)據(jù)結構。

目錄

  • Pandas技巧1–行的條件選擇
  • Pandas技巧2–數(shù)據(jù)的存儲
  • Pandas技巧3–分組數(shù)據(jù)
  • Pandas技巧4–Pandas map
  • Pandas技巧5–Pandas DataFrame的條件格式化

Pandas技巧1–行的條件選擇

首先,數(shù)據(jù)探索是必要步驟。Pandas為進行各種分析提供了一種快速簡便的方法。其中一個非常重要的技巧是根據(jù)條件選擇行或過濾數(shù)據(jù)。

行的條件選擇可以基于由邏輯運算符分隔的單個語句中的單個條件或多個條件。

例如,我使用一個關于貸款預測的數(shù)據(jù)集。

我們將挑選一排還沒有畢業(yè)、收入低于5400英鎊的客戶。讓我們看看我們該怎么做。

視頻:https://youtu.be/hc4or_RF5M8

 
 
  1. import pandas as pd
  2. data = pd.read_csv('../Data/loan_train.csv')
  3. data.head()
  4. data2 = data.loc[(data['Education'] == 'Not Graduate') & (data['ApplicantIncome'] <= 5400)]
  5. data2

注意:記住把每個條件放在括號內(nèi)。

Pandas技巧2–數(shù)據(jù)的存儲

數(shù)據(jù)可以有兩種類型-連續(xù)的和離散的,這取決于我們的分析要求。有時我們不需要連續(xù)變量中的精確值,但需要它所屬的群體。

例如,你的數(shù)據(jù)中有一個連續(xù)變量,年齡。但你需要一個年齡組來進行分析,比如兒童、青少年、成人、老年人。實際上,Binning非常適合解決我們這里的問題。

為了執(zhí)行Binning,我們使用cut()函數(shù)。這對于從連續(xù)變量到離散變量非常有用。

視頻:https://youtu.be/WQagYXIFjns

 
 
  1. import pandas as pd
  2. df = pd.read_csv('titanic.csv')
  3. from sklearn.utils import shuffle
  4. # 隨機化
  5. df = shuffle(df, random_state = 42)
  6. df.head()
  7. bins = [0,4,17,65,99]
  8. labels =['Toddler','Child','Adult','Elderly']
  9. category = pd.cut(df['Age'], bins = bins, labels = labels)
  10. df.insert(2, 'Age Group', category)
  11. df.head()
  12. df['Age Group'].value_counts()
  13. df.isnull().sum()

代碼:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/binning_data.ipynb

Pandas技巧3–分組數(shù)據(jù)

這種操作在數(shù)據(jù)科學家和分析師的日常生活中經(jīng)常執(zhí)行。Pandas提供了一個基本的函數(shù)來執(zhí)行數(shù)據(jù)分組,即Groupby。

Groupby操作包括根據(jù)特定條件拆分對象,應用函數(shù),然后組合結果。

讓我們再看一次貸款預測數(shù)據(jù)集,假設我想看看給來自不同財產(chǎn)領域的人的平均貸款額,比如農(nóng)村、半城市和城市?;c時間來理解這個問題陳述并思考如何解決它。

嗯,Pandas的groupby可以非常有效地解決這個問題。首先根據(jù)屬性區(qū)域劃分數(shù)據(jù)。其次,我們將mean()函數(shù)應用于每個類別。最后,我們將它們組合在一起,并將其打印為新的數(shù)據(jù)幀。

視頻:https://youtu.be/fK-6ZlPvZYU

 
 
  1. #導入數(shù)據(jù)集
  2. import pandas as pd
  3. df = pd.read_csv('../Data/loan_train.csv')
  4. df.head()
  5. # 男女平均收入
  6. df.groupby(['Gender'])[['ApplicantIncome']].mean()
  7. # 平均貸款金額不同的財產(chǎn)地區(qū),如城市,農(nóng)村
  8. df.groupby(['Property_Area'])[['LoanAmount']].mean()
  9. # 比較不同教育背景的貸款狀況
  10. df.groupby(['Education'])[['Loan_Status']].count()

代碼:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/groupby_in_pandas.ipynb

Pandas技巧4–Pandas map

map是另一個提供高度靈活性和實際應用的重要操作。

Pandas map()用于根據(jù)輸入對應關系將序列中的每個值映射到其他值。實際上,這個輸入可以是一個序列、字典,甚至是一個函數(shù)。

讓我們舉一個有趣的例子。我們有一個虛擬的雇員數(shù)據(jù)集。此數(shù)據(jù)集由以下列組成–姓名、年齡、職業(yè)、城市。

現(xiàn)在需要添加另一列,說明相應的狀態(tài)。你會怎么做?如果數(shù)據(jù)集的范圍是10行,你可以手動執(zhí)行,但是如果有數(shù)千行呢?使用Pandas map會更有利。

視頻:https://youtu.be/XkwQOy5RZWY

 
 
  1. #樣本數(shù)據(jù)
  2. data = {'name': ['A', 'B', 'C', 'D', 'E'], 
  3.         'age': [22, 26, 33, 44, 50],
  4.         'profession' : ['data engineer', 'data scientist', 'entrepreneur', 'business analyst', 'self-employed'], 
  5.         'city': ['Gurgaon', 'Bangalore', 'Gurgaon', 'Pune', 'New Delhi']}
  6. df = pd.DataFrame(data)
  7. df
  8. # 城市與州
  9. map_city_to_states = { 'Gurgaon' : 'Haryana', 
  10.                   'Bangalore' : 'Karnataka', 
  11.                   'Pune' : 'Maharashtra', 
  12.                   'New Delhi' : 'Delhi'}
  13. # 將城市列映射為州
  14. df['state'] = df['city'].map(map_city_to_states)
  15. df

代碼:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/map%20python.ipynb

Pandas技巧5–Pandas DataFrame的條件格式化

這是我最喜歡的Pandas技巧之一。這個技巧讓我有能力直觀地定位特定條件下的數(shù)據(jù)。

可以使用Pandas的style屬性將條件格式應用于數(shù)據(jù)框。事實上,條件格式是根據(jù)某種條件對數(shù)據(jù)幀應用視覺樣式的操作。

雖然Pandas提供了大量的操作,但我將在這里向你展示一個簡單的操作。例如,我們有對應于每個銷售人員的銷售數(shù)據(jù)。我想查看的是銷售價值高于80的。

視頻:https://youtu.be/vuirWysk_BA

 
 
  1. import pandas as pd
  2. data = pd.read_excel("../Data/salesman_performance.xlsx")
  3. data
  4. data.style
  5. def highlight_green(sales):
  6.     color = 'green' if sales > 80 else 'black'
  7.     return 'color: %s' % color
  8. formatting = data.iloc[:,1:6].style.applymap(highlight_green)
  9. formatting

代碼:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/Pandas_conditional_formatting.ipynb

結尾

在這篇文章中,我們總結了Pandas的5個技巧。我希望這些技巧能幫助你完成日常的任務,并為你節(jié)省很多時間。


當前文章:推薦5個實用的Pandas技巧
網(wǎng)頁路徑:http://www.5511xx.com/article/dhejgsj.html