java对象序列提取_如何使用带有awk语句的fasta头提取两种类型的序列

我一直在运行一个名为genewise的程序,将核苷酸序列翻译成基因的蛋白质序列 . 输入包括来自许多样品的组装的核苷酸序列 . 为了解析genewise输出,我一直在使用以下命令选择fasta标头:

for i in `ls`; do (cd "$i" && awk '/^>*/{flag=1;} /\/\// {flag=0}flag' out_genewise > out_genewise_prot.fa);done

我被要求对每个基因重新运行,以便输出包括翻译的蛋白质序列和所有样品的cDNA序列 . 我无法创建两个awk语句来解析输出 .

对于在genewise输出用于基因各样品,蛋白质FASTA报头具有在.sp.tr端部与核苷酸具有的.sp在可在两种序列之间进行区分的端部 .

以下是其中一个序列的示例 .

>303.1_assembled_PF3D7_1477500.[1:1643].sp.tr

MNLRLSNYSLFQNILDKTNKSNCIYSTHSSYEEYHDEKVRTGSFFYSKKFRRYMLPIMGI

LYIIILNLLHLKGILSTEVQRSYTFSRNLSDNEKEKEKEKENKEFYKCYKKKGIKKLTIE

EEDLYPRHPGLYNSYYDYERPYLLTPEMLEYIEKAVEENVEKEVERRAIESFENRMLKQF

VDEIRDKRLRKGTI

//

>303.1_assembled_PF3D7_1477500.[1:1643].sp

ATGAATTTAAGGCTATCAAACTATAGTTTGTTTCAAAATATTCTTGATAAAACGAATAAA

TCGAATTGTATTTATTCTACACACAGTTCTTACGAAGAATATCATGATGAAAAAGTAAGA

GAAAAAGAAGTTGAAAGGAGAGCTATAGAATCATTTGAAAATAGAATGCTAAAACAGTTT

GTAGATGAAATAAGAGATAAAAGATTAAGAAAAGGTACCATT

//

我尝试了下面的命令来解析数据,但没有创建任何文件 . 有人可以帮我修理命令吗?

for i in `ls`; do (cd "$i" && awk '/^>*.sp.tr/{flag=1;} /\/\// {flag=0}flag' out_genewise > out_genewise_prot.fa);done

for i in `ls`; do (cd "$i" && awk '/^>*.sp$/{flag=1;} /\/\// {flag=0}flag' out_genewise > out_genewise_nt.fa);done

在此先感谢您的帮助 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值