以下是一个示例代码,展示如何按照分组后的唯一值创建新的列:
import pandas as pd
# 创建示例数据
data = {
'group': ['A', 'A', 'B', 'B', 'B', 'C'],
'value': [1, 2, 3, 4, 5, 6]
}
df = pd.DataFrame(data)
# 按照分组后的唯一值创建新的列
df['unique_count'] = df.groupby('group')['value'].transform('nunique')
print(df)
输出结果如下:
group value unique_count
0 A 1 2
1 A 2 2
2 B 3 3
3 B 4 3
4 B 5 3
5 C 6 1
在上述示例中,我们首先创建了一个包含“group”和“value”的DataFrame。然后,使用groupby
函数按照“group”列进行分组,并使用transform
函数计算每个组中“value”的唯一值数量。最后,将计算结果赋值给一个新的列“unique_count”。