2016-12-15 4 views
0

У меня есть .txt файл, содержащий текст (который я не хочу) и 65 таблиц, как показано ниже (только в верхней части файла .txt)R - Exctract несколько таблиц из текстового файла

enter image description here

Кто-нибудь знает, как я могу извлечь только таблицы из этого текстового файла, чтобы я мог открыть полученный .txt файл как data.frame с моими 65 таблицами в R? Над каждой таблицей указано фиксированное количество строк (начиная с «Результат abcpred on seq ...» и заканчивая «предсказанными эпитопами B-клеток»), и под каждым из них находится переменное количество строк, в зависимости от того, сколько строк каждая таблица имеет. Затем идет следующий стол, и так происходит, пока я не доберусь до 65-й таблицы.

+1

Выполняется ли какая-либо из строк, не входящих в таблицы, цифрами? Вы можете начать с чтения в файле в виде строк и поиска нужных строк с помощью регулярного выражения или простого поиска заголовков столбцов, затем выберите строки ниже этого, пока не получите пустую строку. – Elin

+2

, а не почти бесполезный образ, можете ли вы разместить более крупный текстовый образец файла (желательно только достаточно смежных строк с начала файла, чтобы показать 2-3 полных таблицы? Картинки не являются кодом или данными, если мы не говорим об изображении и вообще не должны использоваться ни для чего, кроме примеров диаграмм. – hrbrmstr

+0

https://stat.ethz.ch/R-manual/R-devel/library/base/html/readLines.html может помочь вам начать работу. – Elin

ответ

0

Учитывая, что таблицы являются единственными элементами, начинающимися с чисел, для grep для целых чисел в начале строки - действительно лучшее решение. Используя оболочку (а не R), выполните команду:

grep '^[0-9]' input > output 

сделал именно то, что хотел.

Смежные вопросы