【发布时间】:2018-09-10 21:22:19
【问题描述】:
我有以下代码行,它采用“_”字符后的所有字符串:
gsub(" ","",unlist(strsplit(dtt$id,"[,_]")))[2]
它工作正常。但是,当我尝试将其放入应用函数以便对 dtt 表中的所有 id 执行相同操作时,我收到以下错误:
apply(dtt,1,gsub(" ","",unlist(strsplit(dtt$id,"[,_]")))[2])
get(as.character(FUN), mode = "function", envir = envir) 中的错误
dtt:
身份证等级
1_蒂姆 89
2_杰克 100
3_杰夫 55
【问题讨论】:
-
这与
gsub无关;你没有正确使用apply。apply的第三个FUN参数必须是应用于data.frame的MARGIN之一的function。如果您提供一些示例数据,则更容易举例。 -
gsub 不是一个函数吗?我在原帖中添加了一个 dtt 表的示例。
-
是
gsub是一个函数;但FUN需要是您对应的MARGIN的函数。请参阅下面的答案。
标签: r error-handling apply sapply