以下是一个示例代码,可以实现保留每个分组中观测次数最少的行:
import pandas as pd
# 创建示例数据
data = {'Group': ['A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'],
'Observation': [1, 2, 3, 4, 5, 6, 7, 8]}
df = pd.DataFrame(data)
# 计算每个分组中的最小观测次数
min_counts = df.groupby('Group')['Observation'].count().min()
# 保留每个分组中观测次数最少的行
result = df.groupby('Group').head(min_counts)
print(result)
执行以上代码,将输出以下结果:
Group Observation
0 A 1
1 A 2
3 B 4
4 B 5