import pandas as pd
# 从实际的CSV文件或其他数据源中加载DataFrame
# df = pd.read_csv('your_file.csv')
# 这里创建一个示例DataFrame来模拟用户提供的数据
data = {
'款式': [1001, 1001, 1001, 1001, 1001, 1002, 1002, 1002, 1002, 1003, 1003, 1003, 1003, 1004, 1004, 1004, 1004, 1005, 1005, 1005],
'颜色': ['红', '蓝', '绿', '黄', '黑', '红', '蓝', '绿', '黑', '红', '蓝', '绿', '黑', '红', '蓝', '绿', '黑', '红', '蓝', '绿'],
'数量': [50, 80, 2, None, None, 100, None, None, 50, 70, 80, 65, 40, None, 50, None, None, 1001, None, 60]
}
# 创建DataFrame
df = pd.DataFrame(data)
# 筛选出数量非空的行
df_not_null = df[df['数量'].notnull()]
# 统计每个款式数量非空的次数
count_non_null = df_not_null.groupby('款式').size()
# 找出数量非空次数超过3次的款式
to_remove = count_non_null[count_non_null > 3].index
# 删除这些款式的所有行
df_filtered = df[~df['款式'].isin(to_remove)]
# 输出处理后的DataFrame
print(df_filtered)