在一些groupby操作之后,我得到了这个结果数据帧:
GridCode User_ID DLang
3 224591119 es
ja
zh
4 224591119 es
6 146381773 en
9 17925282 ca
63102456 en
106225728 ca
229125779 ca
我想为每个GridCode
计算每个User_ID
中DLang
的数量,构建新的列,例如'User_ID_(DLang)'结果数据框会出现为:
GridCode User_ID_es User_ID_ja User_ID_zh ...
3 1 1 1 ...
4 1 0 0 ...
6 0 0 0 ...
到目前为止,我使用unstuck方法获得了一些结果,但知道我无法弄清楚如何计算User_ID及其频率。
答案 0 :(得分:1)
我不确定我明白你要做什么,也许是这样的事情?
df.groupby(['GridCode','DLang']).count().unstack().fillna(0)
User_ID
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 3 1 0 0 0