我想从列表中删除某些值以创建精炼列表。我将要删除的所有值存储在名为remove的字符向量中。 remove中的值对应于列表的第一列。我运行了以下代码:
refined_list = list
for (i in length(list)){
if (refined_list[i,1] %in% remove){
refined_list = refined_list[-i,]
}
else{
refined_list = refined_list
}
}
只有精炼列表的初始化似乎才能注册。没有错误,但refine_list与list相同。这对我来说是一个谜。
答案 0 :(得分:0)
您似乎并没有真正在谈论列表,因为列表不能像您提议的那样是子集(即list[, 1]
)。但是,如果您正在寻找data.frame
的解决方案,请访问:
# Set up some test data
dd <- data.frame(letters = letters[1:10], stringsAsFactors = FALSE)
remove <- letters[c(1, 4, 6)]
# Shed values that are in remove
dd[!(dd[, 1] %in% remove), 1, drop = FALSE]
#> "b" "c" "e" "g" "h" "i" "j"