用lapply提取R中的列名

时间:2017-09-02 02:37:56

标签: r ggplot2 lapply

所以这是我的代码

h <- lapply(select(winedata, -quality), function(variable){
return(ggplot(aes(x = variable), data = winedata) + 
geom_histogram(bins = 30) + xlab(variable))})

有一个问题,那就是xlab(变量)将第一列的值显示为x轴标题,如果我选择变量[2]则它将第二列的值显示为x轴标题。如何将列名称作为x轴标题。名称(变量)似乎不起作用

1 个答案:

答案 0 :(得分:0)

您可以使用Map

library(ggplot2)
library(dplyr)

Map(function(var, names){
  return(ggplot(iris, aes(x = var)) + 
           geom_histogram(bins = 30) + xlab(names))},
  select(iris, -Species), names(iris)[1:4])

Map基本上是mapply SIMPLIFY=FALSE,它接受​​多个输入并返回一个列表。

enter image description here enter image description here enter image description here enter image description here