用户定义的函数生成'无法找到函数'错误

时间:2018-01-29 21:46:29

标签: r function

我的数据集test[[1]]可以找到here

我在下面的代码中定义了一个函数并在for循环中使用它。该函数应该在将它们转换为R变量之前连接诸如(test[[1]], '$', names(test[[1]])[1]))之类的字符串。因此,在此示例中,这些字符串进出test[[1]]$V1

然后我将函数迭代到test[[1]]中的变量。

不幸的是,我一直收到此错误:Error in stvar(test[[1]], j) <- NULL : could not find function "stvar<-"

stvar <- function(df,num) {
  eval(parse(text=paste(deparse(substitute(df)),'$',names(df)[num],sep='')))
}

for (j in 1:length(names(test[[1]]))){
  if (trimws(as.character(stvar(test[[1]],j)[1]))=="Div" & 
      grepl("^M",stvar(test[[1]],j)[3])==0) {
    stvar(test[[1]],j) <- NULL
  }
}

另外,不确定这是否重要,但for循环找到包含某些特征的列(第一次观察==&#34; Div&#34;第三次观察不是以&#39; M& #39;)并删除匹配的列。

有没有办法让循环识别我的功能?

0 个答案:

没有答案