查看: 3542|回复: 5

[其他] 请教:这样的格式转换怎样实现呢?

[复制链接]

迅猛龙

Rank: 8Rank: 8

主题
7
注册时间
2016.4.8
在线时间
378 小时

最佳新人


发表于 2016.7.25 21:39:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
原格式:
gene1        GO:0005506        GO:0005515                               
gene2        GO:0004672                               
gene3        GO:0004672        GO:0004713        GO:0005524        GO:0006468                                                                                                       
gene4        GO:0003676        GO:0003723        GO:0008270
......
目标格式:
gene1        GO:0005506
gene1        GO:0005515
gene2        GO:0004672
gene3        GO:0004672
gene3      GO:0004713
.....


签到
回复

使用道具 举报

版主

Rank: 10Rank: 10Rank: 10

主题
15
注册时间
2016.4.20
在线时间
439 小时

突出贡献优秀版主论坛元老


发表于 2016.7.26 08:06:32 | 显示全部楼层
你真是要干啥?
随便写写就出来了


[AppleScript] 纯文本查看 复制代码
perl -F'\t' -lane '$gene=shift @F;print qq{$gene\t$_} for @F' in.file > out.file
回复 支持 2 反对 0

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
7
注册时间
2016.4.8
在线时间
378 小时

最佳新人


 楼主| 发表于 2016.7.26 08:32:50 | 显示全部楼层
Wuii 发表于 2016.7.26 08:06
你真是要干啥?
随便写写就出来了

谢谢大神!为了输入到agrigo里面。
签到
回复 支持 反对

使用道具 举报

版主

Rank: 10Rank: 10Rank: 10

主题
21
注册时间
2015.12.29
在线时间
439 小时

突出贡献优秀版主热心会员


发表于 2016.7.26 10:25:46 | 显示全部楼层
Perl命令行对我来说可读性不是很好,我把一楼的代码改一下:

#!/usr/bin/perl
use strict;
use warnings;

my ($in,$out)=@ARGV;

if($in=~/.gz/){
        open IN,"<:gzip",$in or die;
}else{
        open IN,$in or die $!;
}

open  OUT,">$out";
while (<IN>){
        chomp;
        my @array=split /\s+/,$_;
        my $gene=shift @array;
        foreach my $i(@array){
                print OUT "$gene\t$i\n";
        }
}
close IN;
close OUT;

评分

参与人数 1奥币 +20 收起 理由
基迪奥-周煌凯 + 20 厉害!

查看全部评分

回复 支持 2 反对 0

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
7
注册时间
2016.4.8
在线时间
378 小时

最佳新人


 楼主| 发表于 2016.7.26 11:10:13 | 显示全部楼层
Ivan 发表于 2016.7.26 10:25
Perl命令行对我来说可读性不是很好,我把一楼的代码改一下:

#!/usr/bin/perl

{:6_290:
签到
回复 支持 反对

使用道具 举报

管理员

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

主题
49
注册时间
2015.12.5
在线时间
533 小时

活跃会员论坛元老


发表于 2016.7.26 11:43:26 | 显示全部楼层
使用TB-tools 的bingo转换也可以产生类似的结果。
新的一天加油!
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表