以下是一个示例代码,用于按每一列的值出现三次或以上进行筛选:
import pandas as pd
# 创建示例数据
data = {'A': [1, 2, 3, 4, 5],
'B': [1, 2, 3, 4, 5],
'C': [1, 2, 2, 3, 3],
'D': [1, 2, 3, 3, 3]}
df = pd.DataFrame(data)
# 筛选出现三次或以上的值
filtered_df = df[df.apply(lambda x: x.value_counts().max() >= 3, axis=0)]
print(filtered_df)
这段代码首先导入了pandas库,并创建了一个示例数据集df。然后,通过使用apply()
函数和value_counts()
函数,对每一列的值进行计数。apply()
函数可以将lambda
函数应用到每一列,value_counts()
函数用于计算每个值的频率。然后,使用>=
运算符判断每一列中最高频率是否大于等于3,从而确定是否筛选该列。最后,将筛选后的结果打印输出。