R 中枢轴更长的问题
Issues with pivot longer in R
这是以下问题的延续。以下示例数据
area <- c("Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut", "Delaware")
sept2020 <- c(.120,.125,.130,.110,.095,.045,.131,.029)
oct2020 <- c(.121,.129,.128,.119,.099,.041,.138,.028)
nov2020 <- c(.119,.128,.129,.118,.091,.048,.139,.185)
percent <- data.frame(area,sept2020,oct2020,nov2020)
library(dplyr)
percent2 <- percent %>%
mutate(across(-1, ~ rank(desc(.)), .names = "{.col}_rank"))
###first attempt
percent2 <- percent2 %>% filter (area == "Delaware") %>% pivot_longer(names_to = "rank", values_to = "count")
所以我有 6 列。 2020 年 9 月、2020 年 10 月、2020 年 11 月,sept2020_rank、oct2020_rank 和 nov2020_rank。
我假设要生成一个 ggplot 图,其中时间是 x 轴,排名是 y 轴,我必须首先将它变成 long(下面的示例)我的第一次尝试是上面的。在这种情况下,cols 项目是什么?我希望为各个州制作图表。
area date rank
Delware sept2020 8
Delaware oct2020 8
Delaware nov2020 1
您可以试试这个并仍然保留值列。
percent_res <- percent %>% pivot_longer(cols = 2:4, names_to = "date") %>% group_by(date) %>% mutate(rank = rank(value)) %>% ungroup()
这是以下问题的延续。以下示例数据
area <- c("Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut", "Delaware")
sept2020 <- c(.120,.125,.130,.110,.095,.045,.131,.029)
oct2020 <- c(.121,.129,.128,.119,.099,.041,.138,.028)
nov2020 <- c(.119,.128,.129,.118,.091,.048,.139,.185)
percent <- data.frame(area,sept2020,oct2020,nov2020)
library(dplyr)
percent2 <- percent %>%
mutate(across(-1, ~ rank(desc(.)), .names = "{.col}_rank"))
###first attempt
percent2 <- percent2 %>% filter (area == "Delaware") %>% pivot_longer(names_to = "rank", values_to = "count")
所以我有 6 列。 2020 年 9 月、2020 年 10 月、2020 年 11 月,sept2020_rank、oct2020_rank 和 nov2020_rank。
我假设要生成一个 ggplot 图,其中时间是 x 轴,排名是 y 轴,我必须首先将它变成 long(下面的示例)我的第一次尝试是上面的。在这种情况下,cols 项目是什么?我希望为各个州制作图表。
area date rank
Delware sept2020 8
Delaware oct2020 8
Delaware nov2020 1
您可以试试这个并仍然保留值列。
percent_res <- percent %>% pivot_longer(cols = 2:4, names_to = "date") %>% group_by(date) %>% mutate(rank = rank(value)) %>% ungroup()