Dear every one:
I try to write a perl script to delet the content of file carp01_1_both.txt as 
same as from another file carp-carp01_TKD181002053-1_1_sg.txt, so to get a new 
file from file carp-carp01_TKD181002053-1_1_sg.txt but excluding file 
carp01_1_both.txt. However, when I run this scrip, it does not work, and 
display the information as follows:
...

Semicolon seems to be missing at carp01_1_both.txt line 44993.
Number found where operator expected at carp01_1_both.txt line 44994, near 
"55659 1"
    (Missing operator before  1?)
Number found where operator expected at carp01_1_both.txt line 44994, near 
"ATCACG    55"
    (Do you need to predeclare ATCACG?)
Number found where operator expected at carp01_1_both.txt line 44994, near "55  
  116"
    (Missing operator before     116?)

syntax error at carp01_1_both.txt line 1, near "979:"


carp01_1_both.txt:
HISEQ:979:HM2HCBCX2:1:1110:15064:80819 1:N:0:ATCACG     62      123     250     
62      +       SINE3-1 45      106     590
HISEQ:979:HM2HCBCX2:1:2104:4144:84852 1:N:0:ATCACG      100     161     250     
62      -       SINE3-1 45      106     590
HISEQ:979:HM2HCBCX2:1:1102:2661:55870 1:N:0:ATCACG      141     202     250     
62      +       SINE3-1 45      106     590
HISEQ:979:HM2HCBCX2:1:1110:21298:76907 1:N:0:ATCACG     29      221     250     
193     +       SINE3-1 3       197     590
HISEQ:979:HM2HCBCX2:1:2116:10990:92099 1:N:0:ATCACG     95      151     250     
57      +       SINE3-1 45      101     590
...

carp-carp01_TKD181002053-1_1_sg.txt:
HISEQ:979:HM2HCBCX2:1:1115:9907:8048 1:N:0:ATCACG       117     243     250     
127     +       SINE3-1a        210     335     570
HISEQ:979:HM2HCBCX2:1:2208:4628:64650 1:N:0:ATCACG      5       49      250     
45      -       SINE3-1 45      89      590
HISEQ:979:HM2HCBCX2:1:1212:6335:22852 1:N:0:ATCACG      2       250     250     
249     +       SINE3-1 234     486     590
HISEQ:979:HM2HCBCX2:1:1103:16183:52106 1:N:0:ATCACG     1       250     250     
250     -       SINE3-1a        229     474     570
HISEQ:979:HM2HCBCX2:1:2211:8958:6423 1:N:0:ATCACG       1       250     250     
250     -       SINE3-1a        117     367     570
HISEQ:979:HM2HCBCX2:1:1113:7857:35762 1:N:0:ATCACG      1       152     250     
152     -       SINE3-1 291     445     590
HISEQ:979:HM2HCBCX2:1:1206:12438:18002 1:N:0:ATCACG     1       249     250     
249     -       SINE3-1a        283     519     570
...

perl script:
#!/usr/bin/perl -w
open(NAME,"<$ARGV[0]")|| die;
open(SECON,"<$ARGV[1]")|| die;
open(SELEC,">$ARGV[2]")|| die;
$name = "";
%pair = ();

while(<NAME>){
     chomp;
     my @line = split("\t",$_);
        $name = $line[0];
        $pair{$name} = 1;
}

while(my $li = <SECON>){
    chomp($li);
    my  @line = split("\t",$li);
        $name = $line[0];
    my  $cont = $li;
   if (exists $hash{$name}) { # if current read appeared before
        next;
        } else { # if it haven't been read before
        print SELEC "$cont\n";
 }
}

close NAME;
close SECON;
close SELEC;


Sincerely

Dong Liu











--

湖南师范大学生命科学院:刘 东
 
格言:积土而为山,积水而为海;
    知识在于积累,成功在于勤奋。

Reply via email to