问题描述
我正在使用来自github的具有8个变量的数据集,现在只想整理一下,因此我尝试了如下所示的pivot_longer函数:
corona_data <- read_csv("https://raw.githubusercontent.com/datasets/covid-19/master/data/time-series-19-covid-combined.csv")
glimpse(corona_data)
pivot_longer(-Country/Region,names_to = "Date",values_to = "values") %>%
我想按列创建一个小标题,其中包含国家/地区的变量,日期以及确认和恢复的病例与死亡。 我尝试了此函数的各种变体,但不断遇到有关不同列规格的错误。 我是R的血腥初学者,所以我将不胜感激!
解决方法
您可以使用以下代码
library(tidyverse)
corona_data %>%
pivot_longer(-c(`Country/Region`,Date,Lat,Long,`Province/State`),names_to = "Name",values_to = "values")
只有已确认的病例可以使用
corona_data %>%
pivot_longer(-c(`Country/Region`,values_to = "values") %>%
subset(Name == "Confirmed")
类似地,您可以获取“恢复和死亡”的数据。
,如果只希望确认,恢复和死亡案件,请尝试以下方法:
library(dplyr)
library(tidyr)
library(readr)
#Data
corona_data <- read_csv("https://raw.githubusercontent.com/datasets/covid-19/master/data/time-series-19-covid-combined.csv")
#Code
corona_data %>% select(c(1,2,6,7,8)) %>%
pivot_longer(cols = -c(1,2)) %>%
arrange(name,`Country/Region`,Date)
输出:
# A tibble: 185,136 x 4
Date `Country/Region` name value
<date> <chr> <chr> <dbl>
1 2020-01-22 Afghanistan Confirmed 0
2 2020-01-23 Afghanistan Confirmed 0
3 2020-01-24 Afghanistan Confirmed 0
4 2020-01-25 Afghanistan Confirmed 0
5 2020-01-26 Afghanistan Confirmed 0
6 2020-01-27 Afghanistan Confirmed 0
7 2020-01-28 Afghanistan Confirmed 0
8 2020-01-29 Afghanistan Confirmed 0
9 2020-01-30 Afghanistan Confirmed 0
10 2020-01-31 Afghanistan Confirmed 0
# ... with 185,126 more rows