为什么通过地图列表创建的列类型?我希望它是一个字符列。如何将其转换为字符列?
t <- mtcars %>% mutate(new_col=map(mpg, function(x) as.character(x)))
typeof(t$new_col)
> [1] "list"
谢谢
答案 0 :(得分:3)
您可以使用map_chr()
代替map()
。
然后你就可以写
mtcars %>% mutate(new_col = map_chr(mpg, as.character))
答案 1 :(得分:3)
map
的结果是一个列表。将列表添加到数据框通常不明智,但是可以做到。另一个常见的错误是将POSIXlt
的结果添加到数据帧。再次可以完成,但是后续操作可能会失败。您本可以使用以下功能:
> t <- mtcars %>% mutate(new_col=as.character(mpg))
> typeof(t$new_col)
[1] "character"