R 中的数据集操作函数:从 1 列转换为 2 列
Function for dataset manipulation in R: convert from 1 column to 2columns
如果我想从这样的数据转换,我应该使用什么函数
这样的数据
尝试整形,下次请使用 dput()
而不是屏幕截图包含数据:
library(dplyr)
library(tidyr)
#Data
df <- data.frame(Country=rep(c('Spain','Croatia'),5),
quarter=as.Date(c('2017-03-31','2017-03-31',
'2017-06-30','2017-06-30',
'2017-09-30','2017-09-30',
'2017-12-31','2017-12-31',
'2018-03-31','2018-03-31')),
employment_index=runif(10,98,107))
#Code
new <- df %>% pivot_wider(names_from = Country,values_from=employment_index)
输出:
# A tibble: 5 x 3
quarter Spain Croatia
<date> <dbl> <dbl>
1 2017-03-31 99.8 99.1
2 2017-06-30 103. 105.
3 2017-09-30 98.7 103.
4 2017-12-31 103. 104.
5 2018-03-31 100. 99.9
如果我想从这样的数据转换,我应该使用什么函数
这样的数据
尝试整形,下次请使用 dput()
而不是屏幕截图包含数据:
library(dplyr)
library(tidyr)
#Data
df <- data.frame(Country=rep(c('Spain','Croatia'),5),
quarter=as.Date(c('2017-03-31','2017-03-31',
'2017-06-30','2017-06-30',
'2017-09-30','2017-09-30',
'2017-12-31','2017-12-31',
'2018-03-31','2018-03-31')),
employment_index=runif(10,98,107))
#Code
new <- df %>% pivot_wider(names_from = Country,values_from=employment_index)
输出:
# A tibble: 5 x 3
quarter Spain Croatia
<date> <dbl> <dbl>
1 2017-03-31 99.8 99.1
2 2017-06-30 103. 105.
3 2017-09-30 98.7 103.
4 2017-12-31 103. 104.
5 2018-03-31 100. 99.9