R 如何使用lappy替换列中的多个值?
我正在尝试运行以下代码,该代码将p列中的所有值“dfb1”替换为多个值的1,例如“dfb2”替换为2。。。。。直到“dfb10”与10。 代码如下:R 如何使用lappy替换列中的多个值?,r,loops,dplyr,lapply,R,Loops,Dplyr,Lapply,我正在尝试运行以下代码,该代码将p列中的所有值“dfb1”替换为多个值的1,例如“dfb2”替换为2。。。。。直到“dfb10”与10。 代码如下: out3 %>% mutate(P=replace(P, P=="dfb1", 1)) 以下是我如何尝试使用Lappy迭代此过程: func2 <- function (k) { out3 %>% mutate(P=replace(P, P==paste0("dfb", 1:k), k)) } k &l
out3 %>%
mutate(P=replace(P, P=="dfb1", 1))
以下是我如何尝试使用Lappy迭代此过程:
func2 <- function (k) {
out3 %>%
mutate(P=replace(P, P==paste0("dfb", 1:k), k))
}
k <-10
lapply(out3, func2)
func2%
突变(P=replace(P,P==paste0(“dfb”,1:k),k))
}
k我们可以使用gsub
将字符串dfb
替换为“”
谢谢你的回答,你能解释一下为什么paste0在这里不起作用吗?我不知道。也许replace函数的设计不能够执行这种矢量化任务。
library(dplyr)
out3 %>% mutate(P = gsub("dfb", "", P))