确认R语言storms数据集1975年以来风暴统计代码输出的正确性
代码正确性确认:1975年以来风暴统计
需求说明
统计1975年以来每年的风暴数量并列出对应风暴名称
编写的R代码
storms %>% count(name, year >= 1975, sort = TRUE)
运行输出
name `year >= 1975` n <chr> <lgl> <int> 1 Emily TRUE 217 2 Bonnie TRUE 209 3 Alberto TRUE 184 4 Claudette TRUE 180 5 Felix TRUE 178 6 Danielle TRUE 165 7 Josephine TRUE 165 8 Edouard TRUE 159 9 Gordon TRUE 158 10 Gabrielle TRUE 157
正确性分析
你的代码和输出不符合需求,核心问题如下:
- 代码中
count(name, year >= 1975)是按风暴名称(name)和“是否1975年及以后”的逻辑值分组统计,得到的n是每个风暴在1975年之后出现的总观测次数(并非每年的数量) - 需求要求的是按年份拆分的风暴统计,你的输出既没有按年份维度展示,也没有体现每年的风暴数量或对应名称
修正后的代码示例
如果要统计1975年以来每一年每个风暴的记录数,可以使用:
storms %>% filter(year >= 1975) %>% count(year, name, sort = TRUE) %>% arrange(year)
如果需要统计1975年以来每年的不同风暴总数(去重后),可以使用:
storms %>% filter(year >= 1975) %>% distinct(year, name) %>% count(year, sort = FALSE)
内容的提问来源于stack exchange,提问作者roTenshi2
相关产品推荐
相关产品推荐

