Неожиданные предметы из словаря словарей

Я часто использую strsplit для подобных проблем, но мне понравилось, как был простой ответ Ромена. Я подумал, что было бы интересно сравнить решение Ромена с ответом strsplit:

Вот решение strsplit:

sapply(strsplit(dob, "\\s+"), "[", 1)

Использование пакета microbenchmark и dob <- rep(dob, 1000) с исходные данные:

Unit: milliseconds
                                    expr       min        lq    median
                   gsub(" .*$", "", dob)  4.228843  4.247969  4.258232
 sapply(strsplit(dob, "\\\\s+"), "[", 1) 14.438241 14.558832 14.634638
        uq       max neval
  4.268029  5.081608  1000
 14.756628 53.344984  1000

Явным победителем на машине Win 7 является регулярное выражение gsub от Romain. Спасибо за ответ и объяснение Ромен.

0
задан Manuel 7 March 2019 в 09:30
поделиться