Объединить строки одним полем - PullRequest
0 голосов
/ 02 мая 2018

У меня есть такой файл:

readA    chr1    229665946 229666155 +  ABCB10  NM_012089   exon6
readA    chr1    229667383 229667478 +  ABCB10  NM_012089   exon7
readA    chr1    229675203 229675338 +  ABCB10  NM_012089   exon8
readB    chr2    229675000 229675888 +  KGB09   NM_022158   exon2

и я хочу объединить его по первому столбцу следующим образом:

readA    chr1    229665946 229675338 +  ABCB10  NM_012089   exon6,exon7,exon8
readB    chr2    229675000 229675888 +  KGB09   NM_022158   exon2

Таким образом, первый столбец и положение хромосомы слиты, я попытался решить это с помощью awk или bedtool merge, но безуспешно. Кто-нибудь может мне помочь? Большое спасибо!

1 Ответ

0 голосов
/ 02 мая 2018

Следующие могут помочь вам в том же.

awk '{a[$1]=a[$1]?a[$1] OFS $NF:$0} END{for(i in a){print a[i]}}' OFS=,   Input_file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...