遍历数据帧并匹配R

问题描述

dput(df) of dataframe2

我需要有关r的帮助。

我有一个数据框:

ant <- data.frame(n_scale = c(0.62,0.29,-0.9),aa = c('A','B','C'))

它看起来像这样:

0.62 A
0.29 B
-0.90 C

然后我读取了一个带有dataframe2的文件,该文件看起来像:

-1 0 1 2
C  B A A

我想实现这一目标:

   -1     0     1     2
    C     B     A     A
   -0.9   0.29  0.62  0.62

如何遍历dataframe2以从ant数据框中获取值?

非常感谢您的帮助! :)

解决方法

使用merge。之后,您可以将match hyd的结果与df2的结果进行比较。

res <- merge(ant,df2)
res <- res[match(df2$hyd,res$hyd),]
res
#   aa n_scale hyd
# 4  C   -0.90  -1
# 3  B    0.29   0
# 1  A    0.62   1
# 2  A    0.62   2

下一次询问时,请按照下面的步骤提供您的数据。


数据:

ant <- data.frame(n_scale = c(0.62,0.29,-0.9),aa = c('A','B','C'))

df2 <- data.frame(hyd=c(-1,1,2),aa=c("C","B","A","A"))