如何为电影营收数据集按特定制片人及年代创建子集并统计
解决方案
基础R语法实现
- 先筛选符合条件的数据集:
# 替换为你的目标制片人姓名和年代范围 target_producer <- "XXX" start_year <- 1980 end_year <- 1989 # 筛选出指定制片人在目标年代的电影数据 filtered_data <- TxSales[TxSales$Producer == target_producer & TxSales$Year >= start_year & TxSales$Year <= end_year, ] - 统计电影数量:
# 统计总数量(行数即电影数) total_films <- nrow(filtered_data) print(total_films) # 如果需要按年份细分统计,用table生成年份分布表 yearly_film_count <- table(filtered_data$Year) print(yearly_film_count)
dplyr包简化操作(更直观)
如果习惯tidyverse风格,用dplyr能一步完成筛选和统计:
library(dplyr) # 统计指定条件下的电影总数 total_count <- TxSales %>% filter(Producer == "XXX", Year >= 1980, Year <= 1989) %>% nrow() # 按年份分组统计各年发行数量 yearly_count <- TxSales %>% filter(Producer == "XXX", Year >= 1980, Year <= 1989) %>% count(Year) print(total_count) print(yearly_count)
注意事项
- 替换代码里的
"XXX"、start_year和end_year为你的实际参数 - 如果存在大小写不一致导致匹配失败的情况,可以统一转成小写后匹配:
filtered_data <- TxSales[tolower(TxSales$Producer) == tolower(target_producer) & TxSales$Year >= start_year & TxSales$Year <= end_year, ]
内容的提问来源于stack exchange,提问作者jdab
相关产品推荐
相关产品推荐

