@solved C 번호를 구문 분석의 속도를 향상 난 펄에서 phred33의 fastq 파일을 구문 분석하고하고 (15 분 정도) 상당한 시간이 걸리는이 같은 코드로 fastq
배 빠릅니다. fastq 파일은 약 3 기가입니다. 이렇게 빨리 만들 수있는 합리적인 방법이 있습니까?
$file=shift;
open(FILE,$file);
open(FILEFA,">".$file.".fa");
open(FILEQA,">".$file.".qual");
while($line=<FILE>)
{
chomp($line);
if($line=~m/^@/)
{
$header=$line;
$header =~ s/@/>/g;
$seq=<FILE>;
chomp($seq);
$nothing=<FILE>;
$nothing="";
$fastq=<FILE>;
print FILEFA $header."\n";
print FILEFA $seq."\n";
$seq="";
print FILEQA $header."\n";
@elm=split("",$fastq);
$i=0;
while(defined($elm[$i]))
{
$Q = ord($elm[$i]) - 33;
if($Q!="-23")
{
print FILEQA $Q." ";
}
$i=$i+1;
}
print FILEQA "\n";
}
}
print $file.".fa\n";
print $file.".qual\n";
, 나는 아마 cachegrind ... –
을 불 것 빠른 인터넷 검색 : HTTP : //www.biostars.org/post/show/5005/ngs-huge-fastq-file-parsing-which-language-for-good-efficiency/': raw'에서 읽어 볼 수도 있습니다 : http : // www.perlmonks.org/?node_id=837624도 참조하십시오 http://stackoverflow.com/questions/1349604/what-is-the-fastest-way-to-read-10-gb-file-from-the-disk 아마도 http://stackoverflow.com/questions/1052765/linux-perl -mmap-performance –
많은 펄을 모른다 -'$ nothing =;'전체 파일을 배열로 읽어들일까요? 아마도 전체 파일을 반복적으로 읽는 중입니까? –