相关疑难解决方法(0)

根据具有特定顺序的向量对数据帧行进行排序

有没有更简单的方法来确保数据框的行按照我在下面的简短示例中实现的"目标"向量进行排序?

df <- data.frame(name = letters[1:4], value = c(rep(TRUE, 2), rep(FALSE, 2)))

df
#   name value
# 1    a  TRUE
# 2    b  TRUE
# 3    c FALSE
# 4    d FALSE

target <- c("b", "c", "a", "d")
Run Code Online (Sandbox Code Playgroud)

为了完成工作,这似乎有点太"复杂"了:

idx <- sapply(target, function(x) {
    which(df$name == x)
})
df <- df[idx,]
rownames(df) <- NULL

df 
#   name value
# 1    b  TRUE
# 2    c FALSE
# 3    a  TRUE
# 4    d FALSE
Run Code Online (Sandbox Code Playgroud)

sorting r dataframe

141
推荐指数
4
解决办法
11万
查看次数

标签 统计

dataframe ×1

r ×1

sorting ×1