在pandas中,可以使用groupby函数对DataFrame进行分组操作。如果要删除groupby中超过n行的组,可以按照以下步骤进行操作:
import pandas as pd
# 读取数据到DataFrame
df = pd.read_csv('data.csv')
# 按照指定列进行分组,并计算每个组的行数
grouped = df.groupby('column_name').size()
# 设置过滤条件,筛选出超过n行的组
filtered_groups = grouped[grouped > n]
# 将超过n行的组的索引与原DataFrame进行匹配,得到需要删除的行的索引
rows_to_delete = df[df['column_name'].isin(filtered_groups.index)].index
# 删除需要删除的行
df.drop(rows_to_delete, inplace=True)
完整的代码示例:
import pandas as pd
# 读取数据到DataFrame
df = pd.read_csv('data.csv')
# 按照指定列进行分组,并计算每个组的行数
grouped = df.groupby('column_name').size()
# 设置过滤条件,筛选出超过n行的组
filtered_groups = grouped[grouped > n]
# 将超过n行的组的索引与原DataFrame进行匹配,得到需要删除的行的索引
rows_to_delete = df[df['column_name'].isin(filtered_groups.index)].index
# 删除需要删除的行
df.drop(rows_to_delete, inplace=True)
以上是使用pandas DataFrame删除groupby中超过n行的组的方法。对于pandas的更多用法和详细介绍,可以参考腾讯云的相关产品文档:腾讯云·Pandas。
领取专属 10元无门槛券
手把手带您无忧上云