我如何匹配数据框中的数字列表

时间:2016-04-10 17:14:13

标签: r dataframe rowname

假设我有一个数据框,其中一列包含与另一个数据帧的行号对应的数值。如何使用第一个数据帧中包含的数字获取数据帧的行名称。

我知道您可以通过以下方式手动执行此操作:

rownames_of_matrix <- rownames(second_matrix[c( 1, 2 , 3 numbers in
                                                1st dataframe ),])

但我想知道是否有一种方法可以做到这一点,而无需手动粘贴数字,因为它是一个非常大的数据帧,它会非常麻烦,并且是一大块文本。

提前感谢您的帮助

1 个答案:

答案 0 :(得分:0)

 a= data.frame(nam=c(3,2,5,6),f=1:4,g=2:5)  # 'a$nam' contains row names of df
 a
   nam f g
 1   3 1 2
 2   2 2 3
 3   5 3 4
 4   6 4 5

 df <- data.frame(a=41:40,b=11:20,c=21:30)  # 'df' data frame
 df
     a  b  c
 1  41 11 21
 2  40 12 22
 3  41 13 23
 4  40 14 24
 5  41 15 25
 6  40 16 26
 7  41 17 27
 8  40 18 28
 9  41 19 29
 10 40 20 30


 df[a$nam,]             # Extracting row names contained in 'a$nam' column in 'a' from 'df'
    a  b  c
 3 41 13 23
 2 40 12 22
 5 41 15 25
 6 40 16 26