!#/usr/bin/perl -w open (IN, "C:/Work/Cytokine/ING_cytokines_20080805.txt"); while (){ #start while loop chomp; @t=split(/\t/,$_); #splits file and stores values in $_ $ING{$t[9]}=1; #selects one column from input file } # end while loop close IN; open (OUT, ">C:/work/Cytokine/Cytokine.txt") or die "cannot open"; open (IN, "C:/work/Cytokine/CytokineArrays.txt") or die "cannot open"; while(){ #start of while loop chomp; @cytokine=split(/\t/,$_); #splits input file and stores in $_ #begin if statements if($cytokine[1]=~/\S+/ and exists $ING{$cytokine[1]}){ #group 1 - compares second row of input file to $ING print OUT "$cytokine[0]\t$cytokine[1]\tY\t"; $SABioY++;} elsif ($cytokine[1] =~ /\d+/) { print OUT "$cytokine[0]\t$cytokine[1]\tN\t"; $SABioN++;} else { print OUT "$cytokine[0]\t$cytokine[1]\t\t"; } if ($SABioY ge 0) {print OUT "SA Biosciences has $SABioY products."}; if ($SABioN ge 0) {print OUT "SA Biosciences does not have $SABioN products."}; if($cytokine[3]=~/\S+/ and exists $ING{$cytokine[3]}){ #group 2 print OUT "$cytokine[2]\t$cytokine[3]\tY\t";} elsif ($cytokine[3] =~ /\d+/) { print OUT "$cytokine[2]\t$cytokine[3]\tN\t"; }else { print OUT "$cytokine[2]\t$cytokine[3]\t\t"; } if($cytokine[5]=~/\S+/ and exists $ING{$cytokine[5]}){ #group 3 print OUT "$cytokine[4]\t$cytokine[5]\tY\t";} elsif ($cytokine[5] =~ /\d+/) { print OUT "$cytokine[4]\t$cytokine[5]\tN\t"; }else { print OUT "$cytokine[4]\t$cytokine[5]\t\t"; } if($cytokine[7]=~/\S+/ and exists $ING{$cytokine[7]}){ #group 4 print OUT "$cytokine[6]\t$cytokine[7]\tY\t";} elsif ($cytokine[7] =~ /\d+/) { print OUT "$cytokine[6]\t$cytokine[7]\tN\t"; }else { print OUT "$cytokine[6]\t$cytokine[7]\t\t"; } if($cytokine[9]=~/\S+/ and exists $ING{$cytokine[9]}){ #group 5 print OUT "$cytokine[8]\t$cytokine[9]\tY\t";} elsif ($cytokine[9] =~ /\d+/) { print OUT "$cytokine[8]\t$cytokine[9]\tN\t"; }else { print OUT "$cytokine[8]\t$cytokine[9]\t\t"; } if($cytokine[11]=~/\S+/ and exists $ING{$cytokine[11]}){ #group 6 print OUT "$cytokine[10]\t$cytokine[11]\tY\t";} elsif ($cytokine[11] =~ /\d+/) { print OUT "$cytokine[10]\t$cytokine[11]\tN\t"; }else { print OUT "$cytokine[10]\t$cytokine[11]\t\t"; } if($cytokine[13]=~/\S+/ and exists $ING{$cytokine[13]}){ #group 7 print OUT "$cytokine[12]\t$cytokine[13]\tY\t";} elsif ($cytokine[13] =~ /\d+/) { print OUT "$cytokine[12]\t$cytokine[13]\tN\t"; }else { print OUT "$cytokine[12]\t$cytokine[13]\t\t"; } if($cytokine[15]=~/\S+/ and exists $ING{$cytokine[15]}){ #group 8 print OUT "$cytokine[14]\t$cytokine[15]\tY\t";} elsif ($cytokine[15] =~ /\d+/) { print OUT "$cytokine[14]\t$cytokine[15]\tN\t"; }else { print OUT "$cytokine[14]\t$cytokine[15]\t\t"; } if($cytokine[17]=~/\S+/ and exists $ING{$cytokine[17]}){ #group 9 print OUT "$cytokine[16]\t$cytokine[17]\tY\t";} elsif ($cytokine[17] =~ /\d+/) { print OUT "$cytokine[16]\t$cytokine[17]\tN\t"; }else { print OUT "$cytokine[16]\t$cytokine[17]\t\t"; } if($cytokine[19]=~/\S+/ and exists $ING{$cytokine[19]}){ #group 10 print OUT "$cytokine[16]\t$cytokine[19]\tY\t";} elsif ($cytokine[19] =~ /\d+/) { print OUT "$cytokine[18]\t$cytokine[19]\tN\t"; }else { print OUT "$cytokine[18]\t$cytokine[19]\t\t"; } if($cytokine[21]=~/\S+/ and exists $ING{$cytokine[21]}){ #group 11 print OUT "$cytokine[20]\t$cytokine[21]\tY\t";} elsif ($cytokine[21] =~ /\d+/) { print OUT "$cytokine[20]\t$cytokine[21]\tN\t"; }else { print OUT "$cytokine[20]\t$cytokine[21]\t\t"; } if($cytokine[23]=~/\S+/ and exists $ING{$cytokine[23]}){ #group 12 (\n used in the final group for formatting) print OUT "$cytokine[22]\t$cytokine[23]\tY\t\n";} elsif ($cytokine[23] =~ /\d+/) { print OUT "$cytokine[22]\t$cytokine[23]\tN\t\n"; }else { print OUT "$cytokine[22]\t$cytokine[23]\t\t\n"; } } # end of while loop close IN; close OUT;