Создание нового столбца на основе буквы в строке - PullRequest
0 голосов
/ 10 июня 2019

Я хочу создать новый столбец в R на основе третьей буквы строки другого столбца.

Я работаю с данными, которые недавно собрали, и вместо того, чтобы просить своих участниковпоставьте галочку напротив своего пола, я включаю его в анонимный идентификатор субъекта.Теперь я хочу создать отдельную колонку пола участника на основе третьей буквы (m / f) в их коде.Однако я посмотрел вокруг, но не смог найти решение.Мне удалось найти, что я могу использовать «отделить (удалить = ЛОЖЬ)» и, если возможно, я хотел бы использовать это, так как я могу спокойно пользоваться tidyverse.

# Example code

library(tidyverse)

a <- data_frame(SubjID = c("hgm9899", "lkf98988", "lkfm09078", "ujm987987"))

Я бы хотелдобавить столбец с заголовком member_sex и M, если третья буква участника была m, и F, если она была f.

Спасибо

1 Ответ

0 голосов
/ 10 июня 2019

Одна возможность может быть:

a %>%
 mutate(participant_sex = toupper(substr(SubjID, 3, 3)))

  SubjID    participant_sex
  <chr>     <chr>          
1 hgm9899   M              
2 lkf98988  F              
3 lkfm09078 F              
4 ujm987987 M  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...