我正在尝试自动化一些图形,而不诉诸传统循环。我很难弄清楚如何将数据框行的元素作为函数的参数传递。该函数如下所示:
makeline <- function(df, var, date, ylab="",xlab="", title="", nbershade=TRUE) {
p <- ggplot(df, aes_string(x=date, y=var))
p <- p + geom_line()
# do some other magical things
}
假设我有一个数据框,其中一行如下:
row1 <- c("corn","Price","Date")
由于玉米是一个数据框 ggplot 作为一个角色被它窒息。然后我使用不带引号的玉米,因为它是一个列名为“价格”和“日期”的数据框,我认为这会起作用:
mapply(makeline,row1[1],row1[2],row1[3])
无论如何,我正在摸索如何有效地使用这个新功能,而不会导致遍历列表。任何指针表示赞赏。