2017-08-12 40 views
1

我有类似于这些的两个分别名为向量:cbind命名为载体的名字

x <- c(1:5) 
names(x) <- c("a","b","c","d","e") 

t <- c(6:10) 
names(t) <- c("e","d","c","b","a") 

我想将它们结合,从而得到以下结果:当我

x t 
a 1 10 
b 2 9 
c 3 8 
d 4 7 
e 5 6 

不幸运行cbind(x,t)结果只是按照它们忽略t的名称并仅保留x的顺序将它们组合在一起。给出以下结果:

x t 
a 1 6 
b 2 7 
c 3 8 
d 4 9 
e 5 10 

我很确定必须有一个简单的解决方案,但我找不到它。由于这段文字是漫长而乏味的循环的一部分(并且我正在使用的矢量要长得多),因此计算选项的计算方法最简单快捷很重要。

回答

4

我们可以用“X”的names改变“T”的元素和cbind用“X”

cbind(x, t = t[names(x)]) 
# x t 
#a 1 10 
#b 2 9 
#c 3 8 
#d 4 7 
#e 5 6 
+1

我确信它是超级明显的顺序!非常感谢 – ltr