我有一个专栏,我尝试使用 tidyr 中的 fill() 函数用其前面的字符串填充空白。
例如我想从:
col_name
NAME1
(blank)
NAME2
(blank)
致:
col_name
NAME1
NAME1
NAME2
NAME2
当我输入代码时:
fill(df, col_name)
控制台注册了语法,但原始输出仍然相同。
我想要一个可以保留在管道中的解决方案%>%
最佳答案
您可能需要首先将“空白”值设置为NA
。例如,如果您的 (blank)
值是空字符串 ""
,请先将其转换为 NA
,然后 fill
应该管用:
library(tidyverse)
df <- tibble(col_name = c("NAME1", "", "NAME2", ""))
df %>%
mutate(col_name = na_if(col_name == "")) %>%
fill(col_name)
#> # A tibble: 4 x 1
#> col_name
#> <chr>
#> 1 NAME1
#> 2 NAME1
#> 3 NAME2
#> 4 NAME2
关于r - 使用 fill() 函数将名称填充到列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46517620/