【发布时间】:2018-02-18 03:27:30
【问题描述】:
我正在尝试仅使用mapply 迭代地绘制散点图。
假设我有iris 数据集:
> names(iris)
[1] "Sepal.Length" "Sepal.Width" "Petal.Length"
[4] "Petal.Width" "Species"
我想使用 mapply() 并且仅使用 mapply() 来绘制 Sepal.Width、Petal.Length 和 Petal.Width 对 Sepal.Length
我有这个入门代码:
mapply(function(ii){plot(x = iris[["Sepal.Length"]],
y = ii, ylab = paste(names(ii)), xlab = "Sepal Length")},
ii = iris[c(2,3,4)])
这里一切正常,除了 y 轴标签。我希望它显示 y 轴值的列名,但这不起作用。
【问题讨论】:
-
由于您只迭代一个变量,您可以使用
lapply。一种方法是将公式粘贴在一起,所以lapply(paste(names(iris[2:4]), '~', names(iris)[1]), function(x) plot(as.formula(x), data = iris))