library(tidyverse)
# L1 is a little weird because it's lists within a list
# therefore we need a nested map
L1 <-list(a = list(c(1:5,NA,NA),NA,c(NA,6:10)),
b = list(c(1:5,NA,NA),NA,c(NA,6:10)))
L1
#> $a
#> $a[[1]]
#> [1] 1 2 3 4 5 NA NA
#>
#> $a[[2]]
#> [1] NA
#>
#> $a[[3]]
#> [1] NA 6 7 8 9 10
#>
#>
#> $b
#> $b[[1]]
#> [1] 1 2 3 4 5 NA NA
#>
#> $b[[2]]
#> [1] NA
#>
#> $b[[3]]
#> [1] NA 6 7 8 9 10
map(L1, map, replace_na, "")
#> $a
#> $a[[1]]
#> [1] "1" "2" "3" "4" "5" "" ""
#>
#> $a[[2]]
#> [1] ""
#>
#> $a[[3]]
#> [1] "" "6" "7" "8" "9" "10"
#>
#>
#> $b
#> $b[[1]]
#> [1] "1" "2" "3" "4" "5" "" ""
#>
#> $b[[2]]
#> [1] ""
#>
#> $b[[3]]
#> [1] "" "6" "7" "8" "9" "10"
# you might have intended for it just to be vectors like this:
L2 <-list(a = c(c(1:5,NA,NA),NA,c(NA,6:10)),
b = c(c(1:5,NA,NA),NA,c(NA,6:10)))
L2
#> $a
#> [1] 1 2 3 4 5 NA NA NA NA 6 7 8 9 10
#>
#> $b
#> [1] 1 2 3 4 5 NA NA NA NA 6 7 8 9 10
map(L2, replace_na, "")
#> $a
#> [1] "1" "2" "3" "4" "5" "" "" "" "" "6" "7" "8" "9" "10"
#>
#> $b
#> [1] "1" "2" "3" "4" "5" "" "" "" "" "6" "7" "8" "9" "10"
Created on 2021-06-25 by the reprex package (v1.0.0)