r语言 - 是否有一种方法不扩展一列,而扩展其他?



我有一个包含用户、他们所属的组和两个我想展开的列(如下)。我想扩展它,这样每个用户都可以保留他们所在的组,但是对于他们所在的每个组,他们都可以获得国家和季节的所有可能排列。

<表类> User_ID 组 国家 季节 tbody><<tr>11法国秋季22西班牙夏季12意大利冬季32意大利春

这是你想要的(4个用户/组x 3个国家x 4个季节,即48行)吗?

library(tidyverse)
tribble(
~User_ID, ~Group, ~Country, ~Season,
1, 1, "France", "Autumn",
2, 2, "Spain", "Summer",
1, 2, "Italy", "Winter",
3, 2, "Italy", "Spring"
) |> 
complete(nesting(User_ID, Group), Country, Season)
#> # A tibble: 48 × 4
#>    User_ID Group Country Season
#>      <dbl> <dbl> <chr>   <chr> 
#>  1       1     1 France  Autumn
#>  2       1     1 France  Spring
#>  3       1     1 France  Summer
#>  4       1     1 France  Winter
#>  5       1     1 Italy   Autumn
#>  6       1     1 Italy   Spring
#>  7       1     1 Italy   Summer
#>  8       1     1 Italy   Winter
#>  9       1     1 Spain   Autumn
#> 10       1     1 Spain   Spring
#> # … with 38 more rows

由reprex包(v2.0.1)创建于2022-06-14

最新更新