2014-12-11 4 views
-1

У меня есть огромный файл csv, содержащий текст, который я хочу разбить на строку длиной 80 символов. Небольшой фрагмент файла выглядит следующим образом:Добавить новую строку в r

ATTTATGAAGGAGAGGGGTCAGGGTTGATTCGGGAGGATCCTATTGGTGCGGGGGCTTTGTATGATTATGGGCGTTGATTAGTAGTAGTTACTGGTTGAACATTGTTTGTTGGTGTATATATTGTAATTGAGATTGCTCGGGGGAATAGGATGATGTATGCTTTGTTTCTGTTGAGTGTGGGTTTAGTAATGGGGTTTGTGGGGTTTTCTTCTAAGCCTTCTCCTATTTATGGGGGTTTAGTATTGATTGTTAGCGGTGTGGTCGGGTGTGTTATTATTCTGAATTTTGGGGGAGGTTATNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCTATTCCTCATCACCCAACTAAAAATATTAAACACAAACTACCACCTACCTCCCTCACCAAAGCCCATAAAAATAAAAAATTATAACAAACCCTGAGAACCAAAATGAACGAAAATCTGTTCGCTTCATTCATTGCCCCCACAATCCTAGATGCCCCAACTAAATACTACCGTATGGCCCACCATAATTACCCCCATACTCCTTACACTATTCCTCATCACCCAACTAAAAATATTAAACACAAACTACCACCTACCTCCCTCACCAAAGCCCATAAAAATAAAAAATTATAACAAACCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNCTAACCTGACTAGAAAAGCTATTACCTAAAACAATTTCACAGCACCAAATCTCCACCTCCATCATCACCTCAACCCAAAAAGGCATAATTAAACTTTACTTCCTCTCTTTCTTCTTCCCACTCATCCTAACCCTACTCCTAATCACATAAATAACCATGCACACTACTATAACCACCCTAACCCTGACTTCCCTAATTCCCCCCATCCTTACCACCCTCGTTAACCCTAACAAAAAAAACTCATACCCCCATTATGTAAAATCCATTGTCGCATCCACCTTTATTATCAGTCTCTTCCCCNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNATCTAGAAATTGCCCTCCTTTTACCCCTACCATGAGCCCTACAAACAACTAACCTGCCACTAATAGTTATGTCATCCCTCTTATTAATCATCATCCTAGCCCTAAGTCTGGCCTATGAGTGACTACAAAAAGGATTAGACTGAACCGAATATAAACTTCGCCTTAATTTTAATAATCAACACCCTCCTAGCCTTACTACTAATAATTATTACATTTTGACTACCACAACTCAACGGCTAC

Как это сделать в R?

+1

Если вы на Linux или OS X, вы можете сделать 'фолд -w 80 Filename> newfile.txt' из терминала/оболочки, которая будет обернуть любой файл на 80 символов. Обратите внимание, что у вас действительно нет файла CSV, если это просто длинная последовательность последовательностей генов. – hrbrmstr

ответ

2

Попробуйте

lines <- readLines('bigline.txt') 
v1 <- strsplit(lines,'(?<=[A-Z]{80})', perl=TRUE)[[1]] 

    nchar(v1) 
#[1] 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 10 

identical(v1[1], substr(lines,1,80)) 
#[1] TRUE 
identical(v1[2], substr(lines,81,160)) 
#[1] TRUE 
Смежные вопросы