J'ai besoin d'aide d'aide à extraire des numéros de code spécifiques à partir d'une chaîne de caractères dans R. Par exemple, j'ai les données suivantes: J'ai besoin des numéros de code (avec 9 numéros toujours) qui apparaissent à la fin de la chaîne de caractères. Enfin, créez une colonne de besoin dans mon cadre de données avec: p> J'apprécie toute aide. P> p>
3 Réponses :
Vous pouvez utiliser Vous pouvez envelopper similaire à l'aide de sous code> pour extraire un numéro de 9 chiffres à la fin de la chaîne.
as.numérique code> Pour convertir cette chaîne en un nombre. p>
str_extract code> à partir de
stringr code>. p>
stringr::str_extract(df$V1, '\\d{9}(?=\\))')
Et si j'ai des cordes comme "amoxiciline 300 mg (100005324)" (pas d'espace dans le numéro de code et le reste de la description), "Ibuprofeno 100002345" (non "(" comme motif similaire). Juste sûr, je sais que le code a 9 chiffres .
@Diegogonzalezavalos Dans ce cas, vous pouvez faire stringr :: str_extract (df $ v1, '\\ d {9}') code> tp obtenir 9 chiffres dans la chaîne.
Peut-être pas la solution la plus élégante:
Certaines options TideverSverse:
xx <- c("AMOXICIL/CLAVULAN 875/125 MG CM/CM REC (100000126)", "HIDROCLOROTIAZIDA CM (50 MG) CONTENIDO (100028929)", "ZIDOVUDINA 10 MG/ML O 50 MG/5 ML SOL ORAL O JARABE (500001802)") stringr::str_sub(xx, -11) %>% readr::parse_number() # outputs as numeric stringr::str_sub(xx, -10, -2) # outputs as character