如何在同一管道中正确删除 NA 并将字符串转换为标题?

How to properly remove NA's and convert strings to title in the same pipeline?

我正在尝试删除 df 列的 NA 值,然后 str_to_title() 所有列观察值,目前我正在使用 library(tidyr) 删除 NAlibrary(stringr) 转换为标题。

代码如下:

library(tidyr)
library(stringr)

test <- df %>% 
  tidyr::drop_na(string_column) %>%
  stringr::str_to_title(string_column)

这是错误:

Error in stri_opts_brkiter(locale = locale) : 
  objeto 'string_column' no encontrado

预期输出应如下所示:

# string_column   numeric_column
#  Debit               100
#  Credit              100
#  Debit               100
#  Credit               0
#  Debit                0
#  Credit               80

数据

df <- data.frame(string_column = c(NA, "DEBIT", "Credit", "Debit", "CREDIT", "DEBIT","CREDIT", NA),
                 numeric_column = c(0, 100, 100, 100, 0, 0, 80,80))

如何调整管道以获得预期的输出?

您可以尝试使用 dplyr::mutate 使用 stringr::str_to_title 更改列 string_column 的值。

df %>% 
  tidyr::drop_na(string_column) %>%
  mutate(string_column = stringr::str_to_title(string_column))