如何将字符列表中的所有元素求和?

时间:2019-02-20 16:20:28

标签: r list loops mutate

我在R中有一个data frame,其中有一个变量a,其中有一个字符列表。 该列表类似于:list('5', '7', '9')

当我使用for循环进行迭代时,我可以计算出它:

for(i in 1:nrow(df)) {
  df$a[i] <- sum(as.numeric(unlist(df$a[i])))
}

但是,当我尝试使用mutate时,它将返回NA

df %>% mutate(
  c <- sum(as.numeric(unlist(a)))
)

此代码有什么问题,我该怎么办?

1 个答案:

答案 0 :(得分:1)

由于它是list个元素,因此我们可以使用map

循环
library(purrr)
library(dplyr)
df %>% 
     mutate(c = map_dbl(a, ~ sum(as.numeric(.x))))