如何添加计数器列来计算数据帧中另一列中的特定值?

2024-09-30 16:35:37 发布

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

我有一个大数据框(>;16M行),其中有一个名为“user”的列。每个用户都有多个实例。我想添加一个新的列“counter”,每次特定用户有新记录时,该列都会增加

数据帧如下所示:

用户收入
AAA 100000
BBB 150000
CCC 10000
AAA 200000
BBB 100000

我希望它与新的计数器列类似

用户收入计数器
AAA 100000 1
BBB 150000 1
CCC 100000 1
AAA 200000 2
BBB 100000 2

我尝试了以下代码行,但需要很长时间:

for i in range(500000):
   user=df_user.iloc[i,0]
   a=1

   for j in range(2000000):
      if df.iloc[j,0] == user:
         df.iloc[j,2] = a
         a = a+1

提前谢谢