如何统计DataFrame中指定5个国家分别产出的电影和剧集数量
实现方案
你可以通过isin()批量筛选目标国家,配合分组统计一次得到所有结果,无需重复写多遍过滤逻辑。
步骤1:定义目标国家列表
把你要统计的5个国家存入列表,可按需修改列表内的国家名称:target_countries = ['United States', 'India', 'United Kingdom', 'Japan', 'South Korea']
步骤2:批量统计
方法1:直接生成分组计数结果
输出格式和你单国家统计的格式完全一致:netflix_df[netflix_df['country'].isin(target_countries)].groupby('country')['type'].value_counts()
方法2:生成宽表格式结果(更易读)
如果想要每行对应一个国家、两列分别展示电影和电视节目数量,可以加unstack()处理,fill_value=0会在某国家没有对应类型内容时自动填充0避免空值:netflix_df[netflix_df['country'].isin(target_countries)].groupby('country')['type'].value_counts().unstack(fill_value=0)
注意事项
如果你的数据中country字段存在多个国家联合出品的情况(比如值为United States, Canada),上述方法只会匹配仅单国家完全匹配的条目。如果需要把包含目标国家的联合出品内容也纳入统计,可以先对country字段按分隔符拆分、展开为单行单国家的格式后再做统计。
内容的提问来源于stack exchange,提问作者Juliette
相关产品推荐
相关产品推荐

