这是df:
动物 | 名称 | foo |
---|---|---|
Tiger | ||
Tiger | ||
Tiger | ||
Tiger | ||
Tiger | ||
Tiger | ||
fish | Three | 1//tr>|
fish | Three | 2|
fish | 三个 | 54 |
fish | Three | 4|
fish | Three | 4|
fish | Three | 7
尝试:
df[""] = "foo" + (df.groupby(["Animal", "Name"]).cumcount() + 1).astype(str)
print(
df.pivot(index=["Animal", "Name"], columns="", values="foo").reset_index()
)
打印:
Animal Name foo1 foo2 foo3 foo4 foo5 foo6
0 Tiger Two 3 4 5 6 7 8
1 fish Three 31 42 54 64 74 87