根据列中的常用数字指定递增的数字

2024-05-14 17:22:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据集中有一列如下所示:

col1
100
100
100
101
101
102
102
103
103
103
103
104
104

我想创建一个列,使每组的数目不断增加。具体地说,在col1100在哪里,就会有01。下一个100将有02以此类推。当它到达具有101的行时,它将执行类似的操作:01,下一个10102,就像它对100所做的那样。你知道吗

我试过了,但我没能按我的计划做: 我得先做一个新专栏

df['nc'] = df.groupby(col1)

这是错误的。你知道吗

期望输出:

    col1   nc
    100    01
    100    02
    100    03
    101    01
    101    02
    102    01
    102    02
    103    01
    103    02
    103  ........ and so on
    103
    104
    104

Tags: and数据dfsoon错误计划col1
1条回答
网友
1楼 · 发布于 2024-05-14 17:22:03

我想你在找这个。你知道吗

df['nc'] = df.groupby('col1').cumcount()+1

它给出:

   col1  nc
0   100   1
1   100   2
2   100   3
3   101   1
4   101   2
5   102   1
6   102   2
7   103   1
8   103   2
9   103   3
10  103   4
11  104   1
12  104   2

如果需要前导零,可以根据需要格式化数字。你知道吗

相关问题 更多 >

    热门问题