按类别枚举行

按类别枚举值行

我有以下数据框 按类别和值排序:

d = {"cat":["a","b","a","c","c"],"val" :[1,2,3,1,4]  }
df = pd.DataFrame(d)
df = df.sort_values(["cat","val"])
df

按类别枚举行

现在,从该数据框中,我想放大每个类别的出现 因此结果如下:

df["cat_count"] = [1,2]
df

按类别枚举行

有没有办法使它自动化?

weiwei1988110 回答:按类别枚举行

您可以像这样使用cumcount。这里的详细信息cumcount

df['count'] = df.groupby('cat').cumcount()+1
print (df)

输出

  cat  val  count
0   a    1      1
2   a    3      2
1   b    2      1
3   c    1      1
4   c    4      2
本文链接:https://www.f2er.com/2649788.html

大家都在问