Chinaunix
标题:
求助:处理出现特定次数的行
[打印本页]
作者:
xunong
时间:
2015-03-26 13:06
标题:
求助:处理出现特定次数的行
如题,文本结构如下,每个有transcript的行都分别下跟一个或多个有exon的行,现在想删掉只下跟一个exon的transcript行以及相应的exon行,对应多个exon的transcript行以及下跟的exon行保留:
chr1 Cufflinks
transcript
91582 119759 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815 full_read_support yes
chr1 Cufflinks exon 91582 91629 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 1
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 92091 92240 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 2
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 119646 119759 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 3
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks
transcript
237537 522332 342 - . gene_id CUFF.39
transcript_id CUFF.39.2
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993 full_read_support yes
chr1 Cufflinks exon 237537 237955 342 - . gene_id CUFF.39
transcript_id CUFF.39.2 exon_number 1
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
chr1 Cufflinks exon 522201 522332 342 - . gene_id CUFF.39
transcript_id CUFF.39.2 exon_number 2
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
chr1 Cufflinks
transcript
237537 238641 1000 . . gene_id CUFF.40
transcript_id CUFF.40.1
FPKM 127910966.2401581556 frac 0.382161 conf_lo 38242411.050446 conf_hi 217579521.429870 cov 1.926887 full_read_support yes
chr1 Cufflinks exon 237537 238641 1000 . . gene_id CUFF.40
transcript_id CUFF.40.1 exon_number 1
FPKM 127910966.2401581556 frac 0.382161 conf_lo 38242411.050446 conf_hi 217579521.429870 cov 1.926887
chr1 Cufflinks
transcript
238183 238245 79 . . gene_id CUFF.40
transcript_id CUFF.40.2
FPKM 10117979.3656947725 frac 0.000025 conf_lo 0.000000 conf_hi 18075836346.382442 cov 0.152420 full_read_support yes
chr1 Cufflinks exon 238183 238245 79 . . gene_id CUFF.40
transcript_id CUFF.40.2 exon_number 1
FPKM 10117979.3656947725 frac 0.000025 conf_lo 0.000000 conf_hi 18075836346.382442 cov 0.152420
预计得到:
chr1 Cufflinks
transcript
91582 119759 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815 full_read_support yes
chr1 Cufflinks exon 91582 91629 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 1
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 92091 92240 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 2
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 119646 119759 1000 - . gene_id CUFF.39
transcript_id CUFF.39.1 exon_number 3
FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks
transcript
237537 522332 342 - . gene_id CUFF.39
transcript_id CUFF.39.2
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993 full_read_support yes
chr1 Cufflinks exon 237537 237955 342 - . gene_id CUFF.39
transcript_id CUFF.39.2 exon_number 1
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
chr1 Cufflinks exon 522201 522332 342 - . gene_id CUFF.39
transcript_id CUFF.39.2 exon_number 2
FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
求大神支招!
作者:
jason680
时间:
2015-03-26 13:36
回复
1#
xunong
$ awk '$3=="transcript"{
if(exon>1)print s
;s=$0;exon=0}
$3=="exon"
{
exon++
;s=s"\n"$0}END{
if(exon>1)print s
}' FILE
chr1 Cufflinks transcript 91582 119759 1000 - . gene_id CUFF.39 transcript_id CUFF.39.1 FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815 full_read_support yes
chr1 Cufflinks exon 91582 91629 1000 - . gene_id CUFF.39 transcript_id CUFF.39.1 exon_number 1 FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 92091 92240 1000 - . gene_id CUFF.39 transcript_id CUFF.39.1 exon_number 2 FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks exon 119646 119759 1000 - . gene_id CUFF.39 transcript_id CUFF.39.1 exon_number 3 FPKM 798897154.6755199432 frac 0.300954 conf_lo 361375353.338330 conf_hi 1236418956.012710 cov 12.034815
chr1 Cufflinks transcript 237537 522332 342 - . gene_id CUFF.39 transcript_id CUFF.39.2 FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993 full_read_support yes
chr1 Cufflinks exon 237537 237955 342 - . gene_id CUFF.39 transcript_id CUFF.39.2 exon_number 1 FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
chr1 Cufflinks exon 522201 522332 342 - . gene_id CUFF.39 transcript_id CUFF.39.2 exon_number 2 FPKM 273759590.6156416535 frac 0.316860 conf_lo 49720029.561747 conf_hi 497799151.669536 cov 4.123993
作者:
我是一隻羊
时间:
2015-03-26 14:00
本帖最后由 我是一隻羊 于 2015-03-26 14:18 编辑
awk --re-interval '/transcript /{i++}{a[i]=/exon/?a[i]"\n"$0:$0}END{for(i=0;i++<length(a);)printf match(a[i],/(.* exon .*){2,}/)?a[i]"\n":""}' inputfile
复制代码
awk '/transcript /{a[++i]=$0}/exon /{b[i]++;a[i]=a[i]"\n"$0}END{for(i=0;i++<length(a);){printf b[i]>=2?a[i]"\n":""}}' inputfile
复制代码
作者:
itfly3
时间:
2015-03-26 16:53
本帖最后由 itfly3 于 2015-03-26 16:55 编辑
回复
2#
jason680
您好,
awk '/transcript/{if(exon>1)print s;s=$0;exon=0}/exon/{exon++;s=s"\n"$0}END{if(exon>1)print s}' file
请问下$3=="transcript"换成/transcript/为什么就不能正常输出
ee,看到了,exon中包含的有transcript字段
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2