鉴于这一数据:
df = pd.DataFrame([[1, 2], [1, 3], [4, 6]], columns=['A', 'B'])我可以使用groupby来显示组合组的大小:
df.groupby(['A','B']).size()
A B
1 2 1
3 1
4 6 1我如何将B的唯一值组合成一个列表,并像这样显示A的大小?
A B
1 2,3 2
4 6 1发布于 2018-10-23 18:15:13
使用:
df['B'].astype(str).groupby(df['A']).agg([','.join,'size'])
Out[134]:
join size
A
1 2,3 2
4 6 1发布于 2018-10-23 18:12:42
只在A上分组,并使用.agg为每个列指定要使用的字典。
df.groupby('A').agg({'B': list, 'A': 'size'}).rename(columns={'A': 'Size'})
B Size
A
1 [2, 3] 2
4 [6] 1https://stackoverflow.com/questions/52955319
复制相似问题