Python 基于另一列中的值创建重复递增序列
我有一瓶可乐。我想做可乐2:Python 基于另一列中的值创建重复递增序列,python,pandas,Python,Pandas,我有一瓶可乐。我想做可乐2: col1 col2 1 1 1 2 1 3 1 4 2 2 2 3 2 4 3 3 3 4 4 4 换句话说,对于col1中每个不同的值,我希望col2是递增的整数,从col1中的值开始,递增1,直到不再有行为止 数据的结构应确保max(col1)=2450: 当col1=1时,有2450行 当col1=2时,有2449行 当col1=2
col1 col2
1 1
1 2
1 3
1 4
2 2
2 3
2 4
3 3
3 4
4 4
换句话说,对于col1中每个不同的值,我希望col2是递增的整数,从col1中的值开始,递增1,直到不再有行为止
数据的结构应确保max(col1)=2450:
- 当col1=1时,有2450行
- 当col1=2时,有2449行
- 当col1=2450时,有一行
col1
,选择组和col1
:
df['col2'] = df.groupby('col1').cumcount().add(df.col1)
输出
搞定了。非常感谢。
col1 col2
0 1 1
1 1 2
2 1 3
3 1 4
4 2 2
5 2 3
6 2 4
7 3 3
8 3 4
9 4 4