【发布时间】:2022-09-28 18:05:58
【问题描述】:
嗨,让我们假设我有一个数据框
Name quantity
0 a 0
1 a 0
2 b 0
3 b 0
4 c 0
我想要类似的东西
Name quantity
0 a 1
1 a 0
2 b 1
3 b 0
4 c 1
这本质上是我想用一个更改每个唯一元素的第一行
目前我正在使用如下代码:
def store_counter(df):
unique_names = list(df.name.unique())
df[\'quantity\'] = 0
for i,j in df.iterrows():
if j[\'name\'] in unique_outlets:
df.loc[i, \'quantity\'] = 1
unique_names.remove(j[\'name\'])
else:
pass
return df
这是非常低效的。有没有更好的方法呢? 先感谢您。