在R语言dataframe中统计cast列演员出现次数的技术问询
迪士尼流媒体数据集演员参演次数统计方案及疑问解答
核心统计流程(以Python Pandas为例)
你的cast列是字符串格式(比如"Winston Hibler, Zac Efron, ..."),要统计演员出现次数,核心是把整段字符串拆成单个演员,再做计数,具体步骤如下:
import pandas as pd # 假设数据集已加载到df中 # 1. 将cast列的字符串按分隔符(通常是逗号+空格)拆分,转为列表 df['cast_list'] = df['cast'].str.split(', ').tolist() # 2. 把列表展开为单行单演员的结构 exploded_df = df.explode('cast_list') # 3. 统计每个演员的出现次数 actor_counts = exploded_df['cast_list'].value_counts() # 查看指定演员的次数,比如示例中的两位 print(actor_counts.loc[['Winston Hibler', 'Zac Efron']])
你的两个疑问解答
是否需要将演员拆分为多列?
不需要。不同影视条目的参演人数差异很大,拆分多列会生成大量空值,既浪费存储空间,又会让统计变得繁琐——你得遍历所有拆分出的列去汇总演员出现次数,效率远不如转为列表后展开的方式。是否应先将数据类型转为list?
是的,这是统计的关键前提。原始的string类型是整段文本,程序无法直接识别其中的单个演员。转为列表后,每个元素对应一个独立演员,后续才能通过explode操作将其拆分为单独的行,进而用value_counts快速完成计数。
内容的提问来源于stack exchange,提问作者twinstars31
相关产品推荐
相关产品推荐

