看板 Python 關於我們 聯絡資訊
大家好: 最近剛學 Python ,學習到從抓取奧運csv檔進行相關統計, 其中練習2--我要算某國的得獎總數 練習2答案如下: events = df[df['NOC'] == 'CHN'].drop_duplicates (subset = ['Event', 'Games'], inplace = False) 我的問題 Q1:我在導入CSV時,已經做過 p_duplicates(subset = ["Name","Sex","Age","Height","Weight","Team","NOC","Games","Year","Season","City","Sport","Event","Medal"], inplace = True) 為什麼練習2還要再去重? Q2:我本來是用events = df[df['NOC'] == 'CHN'].counts() 和events = df[df['NOC'] == 'CHN'].value_counts() 不過第一個數字不對,第二個出現錯誤 請問問題在哪? Q3: inplace=True/False ,書上是說,True是在原資料做去重,False是另外創建一組資料, 可是True時,我看他資料df還是未去重,是我誤會了嗎? 請大大幫忙指點,thx -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.117.51.124 (中國) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1606055739.A.5F4.html
TuCH: 去重是甚麼 去重複? 11/22 23:28
TitanEric: 樓上 應該是 11/22 23:59
TuCH: Q1 多做幾次去重複除了浪費運算 不會影響結果 11/23 00:43
TuCH: Q2 我猜是要指定欄位變成series才會變成你的樣子 11/23 00:44
TuCH: Q3 理論上你應該沒理解錯 可以你要show一下你的結果才能知道 11/23 00:45
TuCH: 問題出在哪 11/23 00:45
TuCH: 問題模糊 資料不清楚 其實很難給你想要的答案 11/23 00:46
art1: 因為基於所有欄位進行的去除重複很容易跟只基於某些欄位的去 11/23 05:31
art1: 除重複的結果不一樣 11/23 05:31
art1: 問題二應該是因為 counts 會計算到重複值,而 value_counts 11/23 05:38
art1: 則要看是出現什麼錯誤 11/23 05:39
art1: 我看書上是寫可以用 nuniques() 來替代 11/23 05:42