我有以下以制表符分隔的文件:
1 1 0 0 2 -9 BB A A B A B ...
2 2 0 0 2 -9 AA B B A B A ...
3 3 0 0 2 -9 AB B A B A B ...
如您所见,第7列中的基因型尚未分离。我需要以下制表符分隔的文件:
1 1 0 0 2 -9 B B A A B A B ...
2 2 0 0 2 -9 A A B B A B A ...
3 3 0 0 2 -9 A B B A B A B ...
我尝试了以下命令:
perl -ne '
($id, $tmp) = split( / /, $_, 2 );
$tmp =~ s/ //g;
print "$id ";
print join(" ", split( //, $tmp ) );
' ped1 > ped2
有人可以解决吗?
答案 0 :(得分:0)
如果我的评论中的问题的答案为是,请尝试以下操作:
awk -v FS="\t" -v OFS="\t" '{ sub(/^./, "&\t", $7); print }' ped1 > ped2
编辑:
Perl版本:
perl -F"\t" -lanE 'BEGIN { $, = "\t" } $F[6] =~ s/^(.)/$1\t/; say @F' ped1 > ped2