104學習精靈

PYTHON資料分析

PYTHON資料分析
關注
邀請朋友
邀請朋友

Line

Facebook

複製連結

取消
關於教室
關注人數 3 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
關於教室
關注人數 3 人
104人力銀行從職缺中挑選出常見技能所成立的官方教室,提供大家進行共學互動。
學習主持人
持續分享知識,
有機會成為官方教室主持人
教室標籤
Hi~ 歡迎分享學習資源,有學習問題可匿名向Giver發問!
我要分享
我要提問

PYTHON資料分析 學習推薦

全部
影片
文章

不知如何開始嗎? 先進行技能挑戰吧~

技能挑戰:初級
目前等級:未達初級
0 人已通過「初級」測驗,通過率0%,和學習精靈一起探索知識、增強能力!
我要挑戰
Mike Ku

Learn Code With Mike品牌創辦人

2022/01/21

3個實用的Pandas套件清理重複資料教學
本文以Kaggle網站的Amazon 2009-2019年Top50暢銷書資料集( https://www.kaggle.com/sootersaalu/amazon-top-50-bestselling-books-2009-2019 )為例,教大家如何查找及清理資料集的重複資料,提升資料的品質。
Q: Pandas duplicated()查找重複資料
想要使用Pandas套件查找資料集的重複資料,利用duplicated()方法(Method)可以得到每筆資料的重複狀態,True代表重複,False為沒重複,如下範例:
import pandas as pd
df = pd.read_csv('bestsellers with categories.csv')
print(df.duplicated())
接著,透過Pandas套件的括號[]語法即可檢視重複資料的各欄位資料,如下範例:
df = pd.read_csv('bestsellers with categories.csv')
print(df[df.duplicated()])
Pandas套件的duplicated()方法(Method)除了能夠查找所有欄位資料完全一樣的重複資料外,也提供了以下兩個關鍵字參數,來客製化查找的方式:
1. subset-查找特定欄位的重複資料
2. keep-保留第一筆(first)、最後一筆(last)或全部(False)的重複資料
如下範例:
df = pd.read_csv('bestsellers with categories.csv')
column_names = ['Name', 'Author', 'Year', 'Genre']
df = df[df.duplicated(subset=column_names, keep=False)]
print(df)
以上範例即是查找Name(書名)、Author(作者)、Year(出版年)及Genre(類型)四個欄位都一樣的重複資料,並且全部保留。
Q: Pandas drop_duplicates()刪除重複資料
從資料集裡找到重複的資料後,接下來,最常見的就是進行刪除或群組處理。
而要刪除完全一樣的重複資料,可以利用Pandas套件的drop_duplicates()方法(Method),如下範例:
df = pd.read_csv('bestsellers with categories.csv')
df.drop_duplicates(inplace=True)
其中,inplace關鍵字參數代表直接從現有資料集中刪除重複資料。
另外,要刪除特定欄位重複的資料,同樣可以透過subset及keep關鍵字參數來達成,如下範例:
df = pd.read_csv('bestsellers with categories.csv')
column_names = ['Name', 'Author', 'Year', 'Genre']
df.drop_duplicates(subset=column_names, keep='first', inplace=True)
Q: Pandas groupby()、agg()群組重複資料
除了可以利用Pandas套件的drop_duplicates()方法(Method)刪除重複資料外,有時基於商業邏輯,可以透過群組的方式解決重複資料。
這時候,就可以利用Pandas套件的groupby()方法(Method)群組相同資料的欄位,以及agg()方法(Method),統計運算剩餘的不同資料欄位,達到合併重複資料成一筆的效果,如下範例:
df = pd.read_csv('bestsellers with categories.csv')
column_names = ['Name', 'Author', 'Year', 'Genre']
summeries = {'User Rating': 'mean', 'Reviews': 'sum', 'Price': 'mean'}
df = df.groupby(by=column_names).agg(summeries).reset_index()
print(df)
如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(https://www.learncodewithmike.com/2022/01/pandas-drop-duplicate-data.html
)網站觀看更多精彩內容。
3 0 1576 0

熱門精選

104學習精靈

產品

02/10 23:02

【免費報名】零經驗↘只要12週↘您也可以轉職資料工程師。專業技術養成班|線上開課說明會
想轉換跑道當資料工程師,但又不知道如何開始?
坊間這麼多培訓班,怎麼能跟業界銜接?
報名在這邊 > >
緯育TibaMe x 104學習精靈 現正舉辦【跨領域轉職資料工程師。課程說明會】
透過12週培訓課程:從基礎 → 進階、團體專題,課後就業媒合,協助您成功轉職!
【本場說明會包含兩個資料工程師_聯合招生說明】
A【資料工程師_養成班】 3/10 確定開班
課程相關完整介紹搶先看:
B【資料工程師_在職班】 4/15 確定開班
課程相關完整介紹搶先看:(後補)
【班級滿額就無法再招生,趕緊報名搶席次吧!】
--------------------------------
本課程將提供104報名會員優惠,優惠折扣將於線上說明會揭曉:
⚡ 線上說明會 | 緯育TibaMe的優惠,透過104活動吧報名,才享有該優惠。
⚡ 確認報名課程,可享 緯育TibaMe 相關付款優惠(例如:信用卡分期...等)
真的!席次最後倒數!免費報名!相信自己一次!
--------------------------------
【報名場次】
🔴 2/15 (六) 11:00~12:00 | 報名到2/14 (五) 18:00
線上說明會連結與資訊,將於2/14(五)18:00 後陸續發送到您報名的電子郵件信箱。
🔴 2/22 (六) 11:00~12:00 | 報名到2/21 (五) 18:00
線上說明會連結與資訊,將於2/21(五)18:00 後陸續發送到您報名的電子郵件信箱。
🔴 2/27 (四) 20:00~21:00 | 報名到2/26 (三) 18:00
線上說明會連結與資訊,將於2/26(三)18:00 後陸續發送到您報名的電子郵件信箱。
0 1 10366 2
104學習精靈精選課程
看更多課程
想提升職場競爭力?專業技能課程看起來👇
學習精靈

06/12 00:00

14 0
Mike Ku

Learn Code With Mike品牌創辦人

2022/01/20

教你用Pandas套件清理資料中的常見資料型態問題(下)
想要實作資料分析,讀取資料是第一步所要執行的動作,而如果沒有正確的進行資料前處理(Data Preprocessing),就會影響最後分析結果的準確性及可靠性。
本文就先針對「資料型態」,來和大家分享如何有效找出髒資料(Dirty Data),並且利用Pandas套件來進行資料處理或清理,避免髒資料(Dirty Data)導致分析的副作用。
Q: Pandas類別資料型態(category)處理
在實作機器學習或分類資料的時候,有時會以數字來分別表示不同類別的資料。
同樣以Kaggle網站的ASUS筆電資料集( https://www.kaggle.com/bhageshcodebeast/asus-laptops-2020-jun )為例,為了進行示範,Mike將「Category筆電類別欄位」利用以下三個數字表示:
0-其他
1-Premium
2-Platinum
Pandas讀取資料集後,如下範例:
import pandas as pd
df = pd.read_csv('AsusLaptops.csv')
print(df)
而各欄位的資料型態,如下範例:
import pandas as pd
df = pd.read_csv('AsusLaptops.csv')
print(df.info())
可以看到Pandas套件判定「Category筆電類別欄位」為int64(整數)型態,當利用Pandas套件的describe()方法(Method)進行摘要性統計的時候,就會看到數字型態的統計結果,如下範例:
import pandas as pd
df = pd.read_csv('AsusLaptops.csv')
print(df['Category'].describe())
但事實上,「Category筆電類別欄位」為類別資料型態(category),如果沒有將欄位進行轉型,就有可能誤導後續的操作或統計。
解決方法,可以使用Pandas套件的astype()方法(Method),將「Category筆電類別欄位」轉型為類別型態(category),這時候,再透過describe()方法(Method)來查看摘要性統計的時候,就會是類別型態(category)的統計結果,如下範例:
import pandas as pd
df = pd.read_csv('AsusLaptops.csv')
df['Category'] = df['Category'].astype('category') #轉型
print(df['Category'].describe())
以上就是在進行資料分析的過程中,常見的資料型態問題,本文和大家分享了利用Pandas套件的info()方法(Method),來查看各欄位的資料型態是否與需求相符,如果其中含有髒資料(Dirty Data),可以使用strip()方法(Method)進行資料清理,以及透過astype()方法(Method)轉型為正確的資料型態。
如果想要學習更多的Python應用教學,歡迎前往Learn Code With Mike(https://www.learncodewithmike.com/2021/12/processing-data-type-with-pandas.html
)網站觀看更多精彩內容。
2 0 726 0
學習精靈

06/14 00:00

14 0

推薦給你

104學習精靈

產品

5小時前

【學習0負擔,職涯成長100%】刷卡分期 0 利率,輕鬆進修!
想提升職場競爭力,卻擔心學習費用負擔太大?
現在,104學習精靈推出:刷卡分期 0 利率分期服務,讓你無壓力學習,快速成長!
💡 單筆消費滿 4,000 元 享 3 期 0 利率
💡 單筆消費滿12,000 元 享 6 期 0 利率
無論是提升專業技能,還是轉職跨領域,現在是最佳時機!
利用彈性付款方式,投資自己,迎接更好的職涯發展。
【精選課程整理】立即選擇適合你的課程,開啟無壓學習之旅!
⚡ Linux系統建置實務 【享 3 期 0 利率】
加碼:領 折$1000送百點 優惠券現折
⚡ 碳管理師菁英班 【享 3 期 0 利率】
加碼:領 折千元↘送2百點 優惠券現折
⚡ 【轉換率優化集訓班 】進階應用 【享 3 期 0 利率】
加碼:領 折1102 元 優惠券現折
⚡ 行銷人的 GTM 實戰工作坊【享 3 期 0 利率】
⚡ 【RevitBIM】AR建築BIM建模師養成班(台中) 【享 6 期 0 利率】
加碼:領 折 2000 元 優惠券現折
⚡ 【RevitBIM】AR建築BIM建模師養成班(台北) 【享 6 期 0 利率】
加碼:領 折 2000 元 優惠券現折
⚡ 【RevitBIM】MEP五大系統整合實務班(贈 iCAP消防空調 雙證班) 【享 6 期 0 利率】
加碼:領 折 2000 元 優惠券現折
⚡ 嵌入式Linux設計開發 【享 6 期 0 利率】
加碼:領 折 3000 元 優惠券現折
⚡ MCU應用設計[ARM Cortex-M 應用設計] 【享 6 期 0 利率】
加碼:領 折 3000 元 優惠券現折
⚡USB韌體設計 【享 6 期 0 利率】
加碼:領 折 3000 元 優惠券現折
⚡壓力管理工作坊:釋放壓力,喚醒自信 【享 3 期 0 利率】
加碼:領 折 999 元 優惠券現折
⚡NPDP產品經理國際認證培訓班(2025/03/22 實體班) 【享 6 期 0 利率】
加碼:領 折 1999 元 優惠券現折
⚡ WBSA商務行銷企劃師國際認證培訓 (2025/03/22實體班) 【享 6 期 0 利率】
加碼:領 折 1999 元 優惠券現折
⚡AWS雲端解決方案架構師考證班 【享 6 期 0 利率】
加碼:領 折 7500 元 優惠券現折
⚡ AI-Agent實作課- 打造AI助理解決工作SOP【享 6 期 0 利率】
【提醒】加碼優惠有時效性,請依照各課程頁說明為基準。
0 0 16 0
你可能感興趣的教室