我搜索了很多方法,但是没有找到任何相关内容。
我试图在for循环内为数据集中的每个变量绘制一个单独的箱线图。我尝试了以下方法:
for (column in names(articles)){
if(is.numeric(articles[, column])) {
bwplot(~column ,data = articles,main= paste(column))
}
}
但是,它没有产生我想要的东西。我该怎么办
答案 0 :(得分:0)
我们可以获取数据框的所有数字列,使用lapply
遍历每个数字列并创建图列表。
cols <- names(iris)[sapply(iris, is.numeric)]
list_diag <- lapply(cols, function(x)
bwplot(reformulate(x), data = iris, main = x))
list_diag[[1]]
要在for
循环中执行此操作,我们可以做到:
list_diag <- vector("list", length(cols))
for (i in seq_along(cols)) {
list_diag[[i]] <- bwplot(reformulate(cols[i]), data = iris, main = cols[i])
}