我们可以使用 pandas 库中的 groupby() 和 nunique() 函数来解决这个问题。其中,groupby() 用于按组将数据分组,nunique() 函数用于计算唯一的值。 示例代码如下:
import pandas as pd
# 创建数据集
data = {'group': ['A', 'A', 'B', 'B', 'B', 'C'], 'column1': [1, 2, 2, 3, 3, 4], 'column2': [1, 1, 1, 2, 2, 3]}
df = pd.DataFrame(data)
# 按组计算两列的唯一值数量
unique_values = df.groupby('group').agg({'column1':'nunique', 'column2':'nunique'})
print(unique_values)
输出结果为:
column1 column2
group
A 2 1
B 2 2
C 1 1
其中,'column1' 和 'column2' 分别是要计算唯一值数量的列,nunique() 函数返回的是不同值的数量。
下一篇:按组计算连续天数