Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
折叠重复行值,并使用dplyr透视更宽的非重复行_R_Dplyr - Fatal编程技术网

折叠重复行值,并使用dplyr透视更宽的非重复行

折叠重复行值,并使用dplyr透视更宽的非重复行,r,dplyr,R,Dplyr,我希望合并列值相同的行ID:Var2和不同的行Var3:Var4,我希望基于Var5变量扩展到唯一的列 我的数据如下: foo <- data.frame(ID = c(1,1,2,2),Var1 = c("A","A","C","C"),Var2 = c("B","B","D","D"),Var3 = c("X&quo

我希望合并列值相同的行ID:Var2和不同的行Var3:Var4,我希望基于Var5变量扩展到唯一的列

我的数据如下:

 foo <- data.frame(ID = c(1,1,2,2),Var1 = c("A","A","C","C"),Var2 = c("B","B","D","D"),Var3 = c("X","Y","Z",NA),var4 = c("S","T","U","V"),Var5 = c("RF","SJ","RF","SJ"))
bar <- data.frame(ID = c(1,2),Var1 = c("A","C"), Var2 = c("B","D"), RF_Var3 = c("X","Z"), RF_Var4 = c("S","U"), SJ_var3 = c("Y","NA"),SJ_Var4 = c("T","V"))
我希望我的数据如下所示:

 foo <- data.frame(ID = c(1,1,2,2),Var1 = c("A","A","C","C"),Var2 = c("B","B","D","D"),Var3 = c("X","Y","Z",NA),var4 = c("S","T","U","V"),Var5 = c("RF","SJ","RF","SJ"))
bar <- data.frame(ID = c(1,2),Var1 = c("A","C"), Var2 = c("B","D"), RF_Var3 = c("X","Z"), RF_Var4 = c("S","U"), SJ_var3 = c("Y","NA"),SJ_Var4 = c("T","V"))
SJ VAR和RF VAR必须一起订购,这一点很重要

任何帮助都将不胜感激。

dplyr选项

     ID Var1  Var2  RF_Var3 RF_var4 SJ_Var3 SJ_var4
  <dbl> <chr> <chr> <chr>   <chr>   <chr>   <chr>
1     1 A     B     X       S       Y       T
2     2 C     D     Z       U       <NA>    V
   ID Var1 Var2 RF_Var3 RF_var4 SJ_Var3 SJ_var4
1:  1    A    B       X       S       Y       T
2:  2    C    D       Z       U    <NA>       V

     ID Var1  Var2  RF_Var3 RF_var4 SJ_Var3 SJ_var4
  <dbl> <chr> <chr> <chr>   <chr>   <chr>   <chr>
1     1 A     B     X       S       Y       T
2     2 C     D     Z       U       <NA>    V
   ID Var1 Var2 RF_Var3 RF_var4 SJ_Var3 SJ_var4
1:  1    A    B       X       S       Y       T
2:  2    C    D       Z       U    <NA>       V
dplyr选项

     ID Var1  Var2  RF_Var3 RF_var4 SJ_Var3 SJ_var4
  <dbl> <chr> <chr> <chr>   <chr>   <chr>   <chr>
1     1 A     B     X       S       Y       T
2     2 C     D     Z       U       <NA>    V
   ID Var1 Var2 RF_Var3 RF_var4 SJ_Var3 SJ_var4
1:  1    A    B       X       S       Y       T
2:  2    C    D       Z       U    <NA>       V

     ID Var1  Var2  RF_Var3 RF_var4 SJ_Var3 SJ_var4
  <dbl> <chr> <chr> <chr>   <chr>   <chr>   <chr>
1     1 A     B     X       S       Y       T
2     2 C     D     Z       U       <NA>    V
   ID Var1 Var2 RF_Var3 RF_var4 SJ_Var3 SJ_var4
1:  1    A    B       X       S       Y       T
2:  2    C    D       Z       U    <NA>       V

这里有一个多步骤的基本R方法,我确信可以使用重塑来简化:


这里有一个多步骤的基本R方法,我确信可以使用重塑来简化: