R重塑数据集

乔丹

我正在尝试使用R重塑整个数据集,这是我想要的代码,df2但是我有点挣扎。

value <- seq(1,20,1)
country <- c("AT","AT","AT","AT",
             "BE","BE","BE","BE",
             "CY","CY","CY", "CY",
             "DE","DE","DE","DE",
             "EE", "EE","EE","EE")

df <- data.frame(country, value)
df

#    country value
# 1       AT     1
# 2       AT     2
# 3       AT     3
# 4       AT     4
# 5       BE     5
# 6       BE     6
# 7       BE     7
# 8       BE     8
# 9       CY     9
# 10      CY    10
# 11      CY    11
# 12      CY    12
# 13      DE    13
# 14      DE    14
# 15      DE    15
# 16      DE    16
# 17      EE    17
# 18      EE    18
# 19      EE    19
# 20      EE    20
#new dataset 
AT <- seq(1,4,1)
BE <- seq(5,8,1)
# etc

df2 <- data.frame(AT, BE)
df2

#   AT BE
# 1  1  5
# 2  2  6
# 3  3  7
# 4  4  8

有什么帮助吗?

使用tidyversedplyrtidyr

df %>% group_by(country) %>% 
  mutate(row=row_number()) %>% 
  pivot_wider(names_from = country,values_from=value)
# A tibble: 4 x 6
    row    AT    BE    CY    DE    EE
  <int> <dbl> <dbl> <dbl> <dbl> <dbl>
1     1     1     5     9    13    17
2     2     2     6    10    14    18
3     3     3     7    11    15    19
4     4     4     8    12    16    20

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章