假设我有一个数据框,其中一列包含与另一个数据帧的行号对应的数值。如何使用第一个数据帧中包含的数字获取数据帧的行名称。
我知道您可以通过以下方式手动执行此操作:
rownames_of_matrix <- rownames(second_matrix[c( 1, 2 , 3 numbers in
1st dataframe ),])
但我想知道是否有一种方法可以做到这一点,而无需手动粘贴数字,因为它是一个非常大的数据帧,它会非常麻烦,并且是一大块文本。
提前感谢您的帮助
答案 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