繁体   English   中英

重整数据,在其中需要对度量ID度量变量进行配对,然后由新列中的多个ID变量定义

[英]Reshape Data where measure id measure variables need to be paired and then defined by multiple id variables in new column

我有以下看起来像这样的数据框:

  NA   X.nm.    X.A. Reaction.Type Trial Actual.Total.Seconds    RA
   1   300  3.3294          0ng      1               14.784 NaDithio
  51   350  0.1779          0ng      1               14.784 NaAsc
  81   380  0.1000          50ng     2               14.784 NaAsc
 101   400  0.0509          0ng      1               14.784 NaAsc
 151   450  0.0125          0ng      2               14.784 NaAsc
 201   500  0.0054          0ng      2               14.784 NaDithio
 251   550  0.0026          0ng      1               14.784 NaDithio
 301   600  0.0010          50ng     1               14.784 NaAsc
 351   650 -0.0001          0ng      1               14.784 NaAsc
 381   680 -0.0005          0ng      1               14.784 NaAsc

因此,有一列用于“ Reaction.Type”,“ Trial”,“ Actual.Total.Seconds”,“ RA”,“ X.nm”,“ XA”。 请忽略Na列。

我想重新格式化我的数据框,以便有一个新的X.nm。 和XA(已配对)列(“ Reaction.Type”,“ Trial”,“ Actual.Total.Seconds”,“ RA”)的每个组合。 我想要每列的标题作为组合。 每X.nm。 有一个对应的XA(有点像一个坐标点,对于每个X.nm,都有一个XA)

示例:第1列标题:0ng,1、50秒,NaAsc中的X.nm(这将使X.nm与XA相匹配的另一列)

第2栏标题:从0ng开始的XA,1、50秒,NaAsc

*然后对以下每个组合执行此操作,因此每个组合都有更多列

  X.nm. from 0ng, 1, 14.784seconds, NaDithio    X.A from 0ng, 1, 50seconds, NaDithio
    300                                         3.3294   
    550                                          0.0026         

当我尝试使用reshape2包中的recast()时,它不会将XA和X.nm对保持在一起。

请帮忙! 谢谢。

library(tidyverse)
df2 <- df %>% 
   unite(var, c(Reaction.Type, Trial, Actual.Total.Seconds, RA)) %>% 
   gather(var2, val, -var, -NA.) %>% 
   unite(var3, c(var2, var)) %>% 
   spread(var3, val)

df2[,split(names(df2), c(1, rep(2:7, 2))) %>% unlist]

#    NA. X.A._0ng_1_14.784_NaAsc X.nm._0ng_1_14.784_NaAsc
# 1    1                      NA                       NA
# 2   51                  0.1779                      350
# 3   81                      NA                       NA
# 4  101                  0.0509                      400
# 5  151                      NA                       NA
# 6  201                      NA                       NA
# 7  251                      NA                       NA
# 8  301                      NA                       NA
# 9  351                 -0.0001                      650
# 10 381                 -0.0005                      680

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM