【发布时间】:2014-05-08 16:24:40
【问题描述】:
我只是想知道一个简单的问题:
假设我有以下函数,它基本上是一个 SAS MACRO
e<-new.env()
e$graph<-function(a,b,c){
e$plot<-ggplot()+
geom_text(aes(label=a......))+
geom_text(aes(label=b......))+
geom_text(aes(label=c......))
}
e$graph(e$label_1,e$label_2,e$label_3)
我基本上使用这个函数的方式与 SAS MACRO 的运行方式相同,所以我可以替换 abc 中的任何内容,然后绘制另一个图表。
但是,R 说缺少 a,因为我在默认环境中调用 a,但函数 e$graph() 使用来自环境 e 的参数。
你们知道我该怎么做吗?也许只使用一个参数,它是一个列表,并在每个单元格中,将 e$label_123 分配给它?
【问题讨论】:
-
请让您的示例独立且可重现。
-
你想让r函数像sas宏一样吗?
-
@rawr,是的,我刚刚发现我应该使用列表。
标签: r function environment