0

我正在尝试对数据框中的一列执行字符串操作Test_df。这个数据框有近 500 万条记录。目标是计算字符串中字符的出现次数(在替换空值之后),我正在使用str_locate计数。

由于这是一个逐行突变,我尝试使用rowwise()带有dplyr.

Test_df <- Test_df%>%
        rowwise() %>%
          mutate(col1 = replace_na(str_locate(as.character(my_string),"2")[1],999))

这条线的执行时间超过了 5 个小时,这是非常次优的。

然后,我尝试根据这个purrr:pmapStack Overflow Thread 使用该函数稍微加快进程,但这无助于加快进程。

Test_DF <- Test_DF%>%mutate(col1 = purrr::pmap_dbl(list(Test_DF$my_string), function(a) replace_na(str_locate(a,"2")[1],999)))

有没有办法让执行replace_na更快str_locate?我需要每月执行一次。

4

0 回答 0