我有一个将瓶号与其体积相关联的数据框(key
在下面的示例中)。我想编写一个函数,它将获取任何瓶号列表 ( samp
) 并返回瓶子体积列表,同时保持瓶号顺序samp
。
下面的函数正确匹配瓶号和体积,但按瓶号升序对输出进行排序。
我怎样才能保持samp
with的顺序merge
?设置sort=FALSE
导致“未指定的顺序”。
例子
samp <- c(9, 1, 4, 1)
num <- 1:10
vol <- sample(50:100, 10)
key <- data.frame(num, vol)
matchFun <- function(samp, key)
{
out <- merge(as.data.frame(samp), key, by.x="samp", by.y="num")
return(out$vol)
}