我使用 FASTA 文件运行 hmmscan 分析,该文件要求带有 --tblout 选项的表格输出格式,该选项故意以空格分隔(而不是制表符分隔)并对齐到对齐的列中。
文件看起来像这样(这只是一个格式示例)
targetname accession queryname accession e-value score bias
x_x_x PFyyyy.y ContigXXX_0 - x.xe-xx yy.y x.x
x PFyyyy.yy COntigXXX_1 - xe-x yy.y x.x
x_x PFyyyy.y COntigXXX_2 - xe-xx y.y x.x
x_x_x PFyyyy.yy COntigXXX_3 - x.xe-x yy.y x.x
.
..
其中目标名称例如:Methyltransf 或 Dimer_tnp_hAT 或 Nucleotide_trans
其中加入例如:PF13847.1 或 PF03407.11 或 PF01958.13;
其中查询名称例如:Contig244_1 或 Contig44245_3 或 Contig12345_6
其中第二个加入栏是:-
其中 e.value 例如:4.0e-10 或 3.5e-15 等。
score 和 bias 是这种格式的数字:xx.x
我想做的是剪切所有对蛋白质结构域有重大影响的 ContigXXX_X 所在的查询名称列。
在此之后,我将能够对它们进行排序并只保留每个 Contig 的第一次出现,我可以将文件与 BlastP 和 BlastX 的结果进行比较(我已经能够获得我的 Contigs 的列表命中 nr数据库)
所以我的问题是:我怎样才能剪掉我所有的 Contig 所在的列?我一直在尝试使用 grep、sed、cut 命令,但我还没有找到合适的命令。
我是 Unix 语言的新手,我还在学习,所以每一个建议都会非常感激。
如果我的问题不清楚,请告诉我,我可以修改它!