wuyi0614 发表于 2017-2-14 20:03 
刚接触R一年多,也来讨论一下,这个话题有点意思;
自建函数的参数应该存储的是一个对象,因此可以放 ...
怎么把[]和$转换呢,比如我要求:df中列a等于3时对应的列b的值,用:
df$b[df$a==3] 可以运行,但是换成df[,b][df[,a]==3]就不行。
好像用[]索引的时候,列名要加引号,df[,"b"][df[,"a"]==3]就可以。
但是写函数的时候,加引号的参数应该是无法识别的,x <- function(data, var1, var2) {data[,"var1"]...}, 若运行x(df, a, b), 函数主体中的data[,"var1"],软件应该会识别成df[,"var1"], 而不会识别成df[,"a"]吧