【发布时间】:2018-04-23 19:08:20
【问题描述】:
我已经成功构建了我的第一个函数 i R。 我现在想改进它,但不知道如何。
我的数据集包含许多具有几乎相同名称的“镜像”变量的变量。唯一的命名差异是“mirror”变量的名称前面有一个“c”。
该函数绘制变量 (VAR) 和它的“镜像” (cVAR) 的比较。
重现挑战的简化数据集和简化函数代码:
library(ggplot2)
df <- data.frame(
X = 1:10+rnorm(10,mean=1,sd=0.5),
cX = 1:10+rnorm(10,mean=1,sd=0.5),
Y = 1:10+rnorm(10,mean=1,sd=0.5),
cY = 1:10-rnorm(10,mean=1,sd=0.5))
compare <- function(VAR, cVAR) {
VAR <- deparse(substitute(VAR))
cVAR <- deparse(substitute(cVAR))
ggplot(df, aes_string(x=VAR, y=cVAR))+
geom_point()+
geom_smooth(method="lm")+
geom_abline(intercept = 0, slope = 1)
}
compare(Y, cY)
我希望函数执行与上面完全相同的操作,但我只想改为编写 compare(Y)。
在 STATA 中,我会尝试这样的事情:
y=c`VAR'
但我在 R 中找不到类似的方法。
【问题讨论】: