我很难在map()函数中使用散布()。下面是一个数据示例:
data1 <- tibble(size = c("1", "2", "3", "4"),
color = c("blue", "green", "yellow", "black"))
data2 <- tibble(size = c("7", "3", "10", "1"),
color = c("orange", "yellow", "red", "white"))
dataList <- list(data1, data2)我想使用我的列表实现的功能与使用单个tibble实现的功能类似:
spread(data1, size, color)
# A tibble: 1 x 4
`1` `2` `3` `4`
<chr> <chr> <chr> <chr>
1 blue green yellow black但是我想使用map()在我的列表中的两个部分上应用这个散布()。但我找不到正确的方法...有什么想法吗?非常感谢你的帮助!
发布于 2020-03-09 22:18:38
由于tidyr::spread已折旧,因此使用tidyr::pivot_wider:
data1 <- tibble::tibble(size = c("1", "2", "3", "4"),
color = c("blue", "green", "yellow", "black"))
data2 <- tibble::tibble(size = c("7", "3", "10", "1"),
color = c("orange", "yellow", "red", "white"))
dataList <- list(data1, data2)
purrr::map(.x = dataList, .f = ~tidyr::pivot_wider(.x, names_from = size, values_from = color) )
#> [[1]]
#> # A tibble: 1 x 4
#> `1` `2` `3` `4`
#> <chr> <chr> <chr> <chr>
#> 1 blue green yellow black
#>
#> [[2]]
#> # A tibble: 1 x 4
#> `7` `3` `10` `1`
#> <chr> <chr> <chr> <chr>
#> 1 orange yellow red whitehttps://stackoverflow.com/questions/60602327
复制相似问题