我试图压扁此列表,但由于NULL而无法正常工作。我希望在展平列表时成为NA
。我使用下面的代码
list('hi','hello', NULL) %>% purrr::flatten_chr()
检索错误
错误:无法将元素3从NULL强制转换为字符
我想在purrr
中找到一个解决方案,因为我在展平列表之前和之后将其用于其他一些操作。
答案 0 :(得分:6)
它不是purrr
,但确实有效:
a <- list('hi','hello', NULL)
> sapply(a,function(x) ifelse(is.null(x),NA,x))
[1] "hi" "hello" NA
答案 1 :(得分:2)
list('hi','hello', NULL) %>%
lapply(function(x) ifelse(is.null(x), NA, x)) %>%
purrr::flatten_chr()
也许这适合你?首先替换NULL,然后展平。希望这会有所帮助。