gpt4 book ai didi

r - 使用R中的dplyr按月创建季节变量

转载 作者:行者123 更新时间:2023-12-04 09:10:41 24 4
gpt4 key购买 nike

我有一个数据集,它有一个名为月的变量,每个月作为一个字符。有没有办法与 dplyr 结合几个月来创建季节变量?我尝试了以下操作,但出现错误:

data %>%
mutate(season = ifelse(month[1:3], "Winter", ifelse(month[4:6], "Spring",
ifelse(month[7:9], "Summer",
ifelse(month[10:12], "Fall", NA)))))

有错误:
Error in mutate_impl(.data, dots) : Column `season` must be length 100798 (the number of rows) or one, not 3

我是 R 的新手,所以非常感谢任何帮助!

最佳答案

正确的语法应该是

data %>% mutate(season = ifelse(month %in% 10:12, "Fall",
ifelse(month %in% 1:3, "Winter",
ifelse(month %in% 4:6, "Spring",
"Summer"))))
编辑 : 可能是完成工作的更好方法
Astronomical Seasons
temp_data %>%
mutate(
season = case_when(
month %in% 10:12 ~ "Fall",
month %in% 1:3 ~ "Winter",
month %in% 4:6 ~ "Spring",
TRUE ~ "Summer"))
气象季节
temp_data %>%
mutate(
season = case_when(
month %in% 9:11 ~ "Fall",
month %in% c(12, 1, 2) ~ "Winter",
month %in% 3:5 ~ "Spring",
TRUE ~ "Summer"))

关于r - 使用R中的dplyr按月创建季节变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49702002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com