我有了這個樣本數據幀df
:大熊貓 - 拆散用最頻繁的值多指標數據幀
GridCode,User,DLang
3,224591119,es
3,224591119,ja
3,224591119,zh
4,224591119,es
6,146381773,en
9,17925282,ca
我想組User
場,只保留最頻繁的DLang
代碼,然後拆散和計數每個GridCode
中的User
的數字。到目前爲止,我所做的:
d = df.groupby(['GridCode','DLang']).size().unstack().fillna(0)
其正確返回:
DLang ca en es ja zh
GridCode
3 0 0 1 1 1
4 0 0 1 0 0
6 0 1 0 0 0
9 1 0 0 0 0
然而,正如你可以在df
看到,有些用戶有多個DLang
條目(例如用戶224591119),但我只想計算他們最常使用的DLang
代碼(例如,該用戶的代碼是es
)。所得到的數據幀將是:
DLang ca en es
GridCode
3 0 0 1
4 0 0 1
6 0 1 0
9 1 0 0
你想如何計算用戶224591119的GrideCode,因爲他在GrideCode 3和4都使用了'es'?有效地數他兩次,而不是四次? – Amyunimus
此外,我認爲您提供的示例數據被幾行(僅有一個「ca」條目,而不是3條)切斷。我改變了這一點,但你可能想更新/檢查示例數據和結果數據幀。 – Amyunimus