我的功能如下:
MES2 <- function(Base)
{
cond1 <- grepl("M.E.S", Base$titulo_janela)
cond2 <- grepl("172.22.5.30", Base$url_destino_N3)
cond3 <- grepl("mes", Base$atividade_N2)
cond4 <- grepl("cid/portalmes/", Base$url_destino_N3)
cond5 <- grepl("novomes", Base$url_destino_N3)
cond6 <- grepl("AMBEV - MES -", Base$titulo_janela)
cond7 <- grepl("MES - Manufacturing Execution", Base$titulo_janela)
cond8 <- grepl("3M_", Base$titulo_janela)
for (i in 1:length(Base$id)) {
if (Base$processo_sistema_N1[i] != "iexplore") {
cond8[i] <- FALSE
}
}
for (k in 1:length(Base$id)) {
if (cond1[k] == TRUE || cond2[k] == TRUE || cond3[k] == TRUE || cond4[k] == TRUE
|| cond5[k] == TRUE || cond6[k] == TRUE || cond7[k] == TRUE
|| cond8[k] == TRUE) {
Base$processo_sistema_N1[k] <- "MES"
}
}
return(Base)
}
问题是:我想更改“processo_sistema_N1”列的确定行中的值,但是当我在我的Base上运行该函数时,它返回“NA”而不是单词“MES”。你们是否知道出了什么问题?
提前致谢。
答案 0 :(得分:0)
在运行该函数之前,添加要更改的列的相应(未来)级别: level(Base $ processo_sistema_N1)&lt; - c(levels(Base $ processo_sistema_N1),“MES”) 希望有效。