这是以下问题的延续。以下样本数据
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")How to construct multiple columns at one time in R
所以我有6列。Sept2020,Oct2020,Nov2020,sept2020_rank,oct2020_rank和nov2020_rank。
我的假设是,要生成一个图形,其中时间是x轴,秩是y轴,我必须先把它变成长的(例如下面的例子),我的第一次尝试是在上面。在这种情况下,科尔的项目是什么?我希望为各个州制作图表。
area date rank
Delware sept2020 8
Delaware oct2020 8
Delaware nov2020 1发布于 2022-03-30 23:11:56
您可以尝试这样做,但仍然保留value列。
percent_res <- percent %>% pivot_longer(cols = 2:4, names_to = "date") %>% group_by(date) %>% mutate(rank = rank(value)) %>% ungroup()https://stackoverflow.com/questions/71685019
复制相似问题