以下是我的数据:

game_id     team      opponent    steals    assists
       <int> <chr>     <chr>           <chr>  <chr>  
 1 401468360 Spurs     Warriors        6      18     
 2 401468360 Warriors  Spurs           9      35     
 3 401468358 Clippers  Rockets         6      25     
 4 401468358 Rockets   Clippers        11     20     
 5 401468359 Hawks     Bucks           4      23     
 6 401468359 Bucks     Hawks           4      21     
 7 401468356 Thunder   Celtics         4      21     
 8 401468356 Celtics   Thunder         15     25     
 9 401468357 Suns      Heat            9      22     
10 401468357 Heat      Suns            6      3     

如何以以下格式获取此数据?

game_id     team     opponent     team_steals   opp_assists   team_assists   opp_steals
       <int> <chr>     <chr>          <int>       <chr>         <chr>         <chr>
 1 401468360 Spurs     Warriors        6           9              18            35
 2 401468358 Clippers  Rockets         6           11             25            20
 3 401468359 Hawks     Bucks           4           4              23            21
 4 401468356 Thunder   Celtics         4           15             21            25
 9 401468357 Suns      Heat            9           6              22            23

我已经try 了pivot_wider的几个变种,但都没有效果.我甚至不确定该功能是否会实现我所寻求的目标.

推荐答案

大概是这样的:

library(dplyr)
library(tidyr)
df %>%
  group_by(game_id) %>% 
  rename(team_steals = steals) %>% 
  mutate(opp_steals = lead(team_steals)) %>% 
  rename(team_assists = assists) %>% 
  mutate(opp_assists = lead(team_assists)) %>% 
  drop_na()
    game_id team     opponent team_steals team_assists opp_steals opp_assists
      <int> <chr>    <chr>          <int>        <int>      <int>       <int>
1 401468360 Spurs    Warriors           6           18          9          35
2 401468358 Clippers Rockets            6           25         11          20
3 401468359 Hawks    Bucks              4           23          4          21
4 401468356 Thunder  Celtics            4           21         15          25
5 401468357 Suns     Heat               9           22          6           3

R相关问答推荐

如何使用R中的dhrr函数将李克特量表的因子列从长转换为宽?

格点中指数、双曲和反双曲模型曲线的正确绘制

bslib::card_header中的shine::downloadButton,图标而不是文本

是否可以创建一个ggplot与整洁判断的交互作用

为什么我的基准测试会随着样本量的增加而出现一些波动?

将多列合并为单独的名称—值对

R Read.table函数无法对制表符分隔的数据正常工作

将重复项转换为NA

哪一行和行和 Select 特定行,但是考虑到Nas

如何通过匹配R中所有可能的组合来从宽到长旋转多个列?

从圆到R中的多边形的标绘雷达图

在GG图中绘制射线的自动程序

如何将网站图像添加到带有极坐标的面包裹条形图?

按时间顺序对不同事件进行分组

在多页PDF中以特定布局排列的绘图列表不起作用

有毒元素与表观遗传年龄的回归模型

为什么不能使用lApply在包装函数中调用子集

按组使用dummy r获取高于标准的行的平均值

向数据添加标签

将矩阵中特定行的双精度值添加到下一行中