Как заменить пробелы символьной строкой в ​​отфильтрованном кадре данных в R? - PullRequest
0 голосов
/ 07 сентября 2018

В R я пытаюсь заменить пустые значения в одном столбце на основе шаблона символьной строки в другом столбце.

Ниже показано, как выглядит фрейм данных (df):

 df
 qual   bdl
 U      <
 UJ   
 J
 U-     <
 UU     
 NA   
 U      <

И вот как мне хотелось бы, чтобы датафрейм выглядел так:

 df
 qual   bdl
 U      <
 UJ     <
 J
 U-     <
 UU     <
 NA   
 U      <

Для каждой строки в df$qual, содержащей «U», я хочу, чтобы df$bdl содержал «<». <br> Используя пакет stringr, я попробовал следующий код:

data$bdl <- ifelse(str_detect(data$qual, "U") & data$bdl != "<", "<", data$bdl)

Но я только что получил АН во всей колонне df$bdl

Я не уверен, как решить эту проблему.

1 Ответ

0 голосов
/ 07 сентября 2018

Использование grepl:

df_1$bdl[grepl("U", df_1$qual)]="<"

Выход:

    qual bdl
1    U   <
2   UJ   <
3  <NA>   <
4    J    
5   U-   <
6   UU   <
7  <NA>    
8    U   <
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...