R 如何使用lappy替换列中的多个值?

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

我正在尝试运行以下代码,该代码将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 <-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))