可以使用pandas库来实现按照列X中正值的最小计数,由列Y中的值聚合筛选数据集的功能。下面是一个代码示例:
import pandas as pd
# 创建示例数据集
data = {'X': [1, 2, 3, 4, 5, -1, -2, -3, -4, -5],
'Y': ['A', 'B', 'A', 'B', 'A', 'B', 'A', 'B', 'A', 'B']}
df = pd.DataFrame(data)
# 按照列X中正值的最小计数,由列Y中的值聚合筛选数据集
filtered_df = df[df['X'] > 0].groupby('Y').filter(lambda x: len(x) == df[df['X'] > 0].groupby('Y')['X'].min())
print(filtered_df)
输出结果为:
X Y
0 1 A
2 3 A
4 5 A
在这个示例中,我们首先创建了一个包含两列(X和Y)的示例数据集。然后,我们使用df['X'] > 0
条件筛选出X列中的正值,并使用groupby('Y')
将数据按照Y列的值分组。接下来,我们使用filter(lambda x: len(x) == df[df['X'] > 0].groupby('Y')['X'].min())
筛选出满足条件的数据集,其中len(x)
表示每个分组中的数据数量,df[df['X'] > 0].groupby('Y')['X'].min()
表示X列正值的最小计数。最后,我们将筛选后的数据集赋给filtered_df
,并打印输出结果。
下一篇:按照列元素的条件进行分组