Closed 。这个问题需要细节或清晰度 。目前不接受答案。
如何生成列出重复值的新列?例如,我的数据框是:
id color
123 white
123 white
123 white
345 blue
345 blue
678 red
这是所需的输出:
# id color
1 123 white
1 123 white
1 123 white
2 345 blue
2 345 blue
3 678 red
检查与factorize
df['#']=df.id.factorize()[0]+1
df
id color #
0 123 white 1
1 123 white 1
2 123 white 1
3 345 blue 2
4 345 blue 2
5 678 red 3
另一种方法
df.groupby('id').ngroup()+1
0 1
1 1
2 1
3 2
4 2
5 3
dtype: int64
要将其添加到第一个位置:
df.insert(loc=0, column='#', value=df.id.factorize()[0]+1)
df
# id color
0 1 123 white
1 1 123 white
2 1 123 white
3 2 345 blue
4 2 345 blue
5 3 678 red
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)