R: Как манипулировать данными текстового файла, чтобы стереть определенные строки - PullRequest
0 голосов
/ 01 марта 2019

У меня есть текстовый файл, который содержит такие строки данных: fSumw [0] = 0, x = -0.5, error = 0

Я хочу манипулировать файлом данных, чтобы оставить только числовые записи, подобные этой: 0, -0,5, 0

как лучше всего подойти к этому в R?Спасибо за чтение

1 Ответ

0 голосов
/ 01 марта 2019

Использование регулярных выражений.Для данного текстового объекта txt выполните следующие действия:

txt <- 'fSumw[0] = 0, x=-0.5, error=0'
regmatches(txt, gregexpr('(?<==)\\s*-*\\d+\\.*\\d*', txt, perl = TRUE))

Вывод:

[[1]]
[1] " 0"   "-0.5" "0"

Функция gregexpr возвращает позицию любой строки, соответствующей указанному шаблону (задается какрегулярное выражение) и regmatches возвращает эти совпадения путем поиска позиции в объекте txt.

Для получения дополнительных указаний по регулярным выражениям вы можете скачать шпаргалку: https://www.rstudio.com/wp-content/uploads/2016/09/RegExCheatsheet.pdf

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...