我有一个大数据帧(>16M 行(,其中有一个名为"user"的列。每个用户都有多次出现。我想添加一个新列"计数器",每次特定用户有新记录时都会增加。
数据帧如下所示:
user revenue
AAA 100000
BBB 150000
CCC 10000
AAA 200000
BBB 100000
我希望它看起来像这样,新的计数器列
user revenue counter
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
请查看熊猫暨计数
df['counter'] = df.groupby('user').cumcount()
应该做这个技巧