这是我的问题,当我想开发一个功能广泛使用。函数参数定义问题在R
dataframe1 <- data.frame(V1 = 1:10, V2 = 11:20, V3 = 21:30, V4 = 31:40)
myfun <- function (dataframe, A, B, yvar) {
dataframe1$A <- as.factor(dataframe$A)
dataframe1$B <- as.factor (dataframe$B)
dataframe1 <- data.frame(A = dataframe1$A,
B = dataframe1$B, yvar = dataframe1$yvar)
print(dataframe1)
}
myfun (dataframe = dataframe1, A = "V1", B= "V2", yvar = "V3")
Error in `$<-.data.frame`(`*tmp*`, "A", value = integer(0)) :
replacement has 0 rows, data has 10
myfun (dataframe = dataframe1, A = dataframe1$V1,
B= dataframe1$V2, yvar = dataframe1$V3)
Error in `$<-.data.frame`(`*tmp*`, "A", value = integer(0)) :
replacement has 0 rows, data has 10
我想使用的第一种类型定义,在变量名的说法是“括号”,而不是“数据文件$ VARIABLENAME”
好像这个问题已经 – hadley
以前有人问我找到确切的问题,我可以看到一个类似但不同的问题 - http://stackoverflow.com/questions/8121542/r-specifying-variable-name-in-function-parameter-for-a-function-of-general-uni,我希望这不是投票的原因!如果有人可以指示我相同的问题,我会很高兴,即使关闭此帖... – jon