使用groupby()时,如何使用包含组编号索引的新列创建DataFrame,类似于dplyr::group_indicesR中.例如,如果我有
>>> df=pd.DataFrame({'a':[1,1,1,2,2,2],'b':[1,1,2,1,1,2]})
>>> df
a b
0 1 1
1 1 1
2 1 2
3 2 1
4 2 1
5 2 2
Run Code Online (Sandbox Code Playgroud)
我怎么能得到一个像DataFrame
a b idx
0 1 1 1
1 1 1 1
2 1 2 2
3 2 1 3
4 2 1 3
5 2 2 4
Run Code Online (Sandbox Code Playgroud)
(idx索引的顺序无关紧要)
我有df:
domain orgid
csyunshu.com 108299
dshu.com 108299
bbbdshu.com 108299
cwakwakmrg.com 121303
ckonkatsunet.com 121303
Run Code Online (Sandbox Code Playgroud)
我想添加一个新列,用每个orgid替换域列和数字ID:
domain orgid domainid
csyunshu.com 108299 1
dshu.com 108299 2
bbbdshu.com 108299 3
cwakwakmrg.com 121303 1
ckonkatsunet.com 121303 2
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这一行,但它没有给出我想要的结果:
df.groupby('orgid').count['domain'].reset_index()
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?