我想在应用我的函数后创建一个带有标签column('off')的新数据框。
df_onoff = df_sample.groupby('id')['digits'].apply(lambda nums: "%d" % ', '.join(format(n%2**60,'060b') for n in nums).count('01'))
现在是输出:
id
4013 466
4014 592
4015 566
4016 466
我希望输出为:
id off
4013 466
4014 592
4015 566
4016 466
任何想法?谢谢!
最佳答案
只需添加reset_index
即可,因为输出为Series
:
df_onoff = df_sample.groupby('id')['digits']
.apply(lambda nums: "%d" % ', '.join(format(n%2**60,'060b') for n in nums).count('01'))
.reset_index()
如果可能,添加参数名称:
.reset_index(name='off')
或重命名列:
.reset_index().rename(columns={'digits':'off'})
关于python - pandas groupby通过apply操作创建一个带有标签的新数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45641758/