我是 R 的新手,几天来无法将参数传递给函数。
我有一个使用tapply的函数,其中有一个by语句,我的数据集是列表数据框的形式,所以函数是:
Means = function(data,by,month){
data1 = list()
for (i in 1:length(month)){
data1[[i]] = tapply(data[[i]]$var1,by,mean)
}
data1
}
by 应该是变量列表(未引用),但问题是调用函数,变量无法识别:
temp = Means(data,list(data$var2,data$var3))
这不起作用,问题是数据是一个列表,它不是一个数据框,有没有办法超越它或者我应该重塑我的数据?一种方法是在函数调用中执行 for 循环,但我宁愿避免它,因为这不会为我节省太多使用该函数的写作。
谢谢你。