你可以使用pandas
库来按ID分组并根据行内的值创建列。下面是一个示例代码:
import pandas as pd
# 创建示例数据
data = {'ID': ['A', 'A', 'B', 'B', 'C', 'C'],
'Value': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 按ID分组并创建新列
df['Grouped'] = df.groupby('ID')['Value'].transform(lambda x: ','.join(map(str, x)))
print(df)
输出结果:
ID Value Grouped
0 A 1 1,2
1 A 2 1,2
2 B 3 3,4
3 B 4 3,4
4 C 5 5,6
5 C 6 5,6
在上面的代码中,我们首先创建了一个包含ID和Value列的DataFrame。然后,使用groupby
函数按ID分组,并使用transform
函数将每个分组内的Value值转换为字符串,并使用逗号拼接。最后,将生成的新列赋值给原始DataFrame的Grouped
列。
这样就按ID分组,并在每个分组内创建了一个新列。每个新列包含该分组内的所有值,以逗号分隔。
上一篇:按ID分组,计算重复的数量。