У меня есть данные о странах, например,
MWE <- list("Argentina -2.4 3.4", "Euro area 3.7 6.4")
Я хочу получить список только с цифрами. В моем примере, get "-2.4 3.4" "3.7 6.4"
Обратите внимание, что моя "страна" может быть в нескольких словах, поэтому я не могу играть с пробелами так легко, как хотелось бы.
Мне удалось сделать это только сположительные числа с
MWE_1 <- sub("^.*?(\\d)", "\\1",MWE)
Но с отрицательными числами или другими словами, которые также возможны до чисел, мой подход не работает.
Я пытался использовать |
, ноне удалось, оба
MWE_2 <- sub("^.*?(\\d)|^.*?(-)", "\\1",MWE)
MWE_3 <- sub("^.*?(\\d|-)", "\\1",MWE)
дают мне один и тот же результат без минус `" 2.4 3.4 "" 3.7 6.4 ".
Если мой MWE равен
MWE <- list("R text1 47 GDP -2.4 3.4", "Euro area but not UK CPI 3.7 6.4")
Iхотите получить весь текст из «ВВП» или «ИПЦ», то есть GDP 2.4 3.4
и CPI 3.7 6.4
. Бывает, что
NMWE2 <- sub("^.*?(GDP|CPI)",NMWE)
работает, так что я думаю, это просто вопрос о том, как указать знак минус, хотя экранирование с помощью \\-
тоже не работает. `