我试图在正常情况下做一项简单的任务,然而,在这种情况下,我处理的是不同格式的大数据(snp.data,GENABEL包)。因此,这里的挑战不是任务本身,而是在没有进一步数据操作的情况下,设法在单行代码中完成任务。
因此,我试图在不同的数据帧中使用不同的变量来更改列(在操作过程中充当向量)。同样的数据帧也有一个引用列,用于匹配将要更改的变量。
让我用一个可重复的例子来解释:
vec = c("424","425","426","429", "430", "455","467","468")
df = data.frame(ID = c("426","429", "430","424","425","455","467","468", "508","601"),
ID_rep = c("D1","D2", "D3","D4","D5","D6","D7","D8","D9","D10"))
所以
vec
应该用更改
ID_rep
中的列
df
基于的匹配信息
ID
中的列(引用)
df
再一次
换句话说
vec
应该从此开始:
> vec
[1] "424" "425" "426" "429" "430" "455" "467" "468"
对此:
> desired.result
[1] "D4" "D5" "D1" "D2" "D3" "D6" "D7" "D8"
同样,这将改变元数据中像列一样的向量,所以我不认为多步骤数据处理方法是不可行的,因为这部分数据有很多不同的结构和不均匀的大小。
提前感谢!