0
loess.smooth <- function(dat) {
dat <- dat[complete.cases(dat),]
## response
vars <- colnames(dat)
## covariate
id <- 1:nrow(dat)
## define a loess filter function (fitting loess regression line)
loess.filter <- function (x, span) loess(formula = paste(x, "id", sep = "~"),
data = dat,
degree = 1,
span = span)$fitted
## apply filter column-by-column
new.dat <- as.data.frame(lapply(vars, loess.filter, span = 0.75),
col.names = colnames(dat))
}
當我嘗試應用loess.smooth
到數據幀,我得到的錯誤:無效的類型(關閉)的變量,它是不是一個函數
Error in model.frame.default(formula = paste(x, "id", sep = "~"), data = dat) :
invalid type (closure) for variable 'id'
我不明白爲什麼這是一個因爲id
不是一個函數,這是錯誤所暗示的。 當我在函數外面運行這些代碼行時,它完全正常工作,完全按照我希望的方式執行。