I want to print sequence of Ribose Puckering.
Script in perl:
open (filehandler, "List_NAD_ID.txt") or die $!; #Input file
my @file1=<filehandler>;
my $OutputDir = 'C:\Users\result'; #output directory path
foreach my $line (@file1)
{
chomp $line;
open (fh,"$line") or die $!;
open (out, ">$OutputDir/$line.pdb") or die $!;
print out "\n" , "$line ";
print out "\n";
while($file = <fh>)
{
if($file =~/^HETATM.{7}(?:C4B|O4B|C1B|C2B|O4B|C1B|C2B|C3B|C1B|C2B|C3B|C4B|C2B|C3B|C4B|O4B|C3B|C4B|O4B|C1B)/)
{
print out "$file";
}
}
print "Completed", "\n";
}
I have pdb input file:
HETATM 3934 C4B NAD A 255 10.495 -11.444 1.016 1.00 50.46 C
HETATM 3935 O4B NAD A 255 10.768 -11.615 2.448 1.00 48.17 O
HETATM 3936 C3B NAD A 255 10.445 -12.867 0.431 1.00 49.69 C
HETATM 3938 C2B NAD A 255 10.431 -13.759 1.675 1.00 48.46 C
HETATM 3940 C1B NAD A 255 11.323 -12.898 2.593 1.00 46.97 C
HETATM 3978 C4B NAD B 256 14.596 1.733 33.219 1.00 50.48 C
HETATM 3979 O4B NAD B 256 14.370 0.578 32.357 1.00 48.22 O
HETATM 3980 C3B NAD B 256 14.940 1.177 34.603 1.00 49.64 C
HETATM 3982 C2B NAD B 256 14.987 -0.347 34.401 1.00 48.48 C
HETATM 3984 C1B NAD B 256 14.066 -0.517 33.189 1.00 46.98 C
Expected Result:
I want to copy following atom and then paste as per following sequence. All should be chain wise. (Chain "A, B, C,..........")
HETATM 3934 **C4B** NAD **A** 255 10.495 -11.444 1.016 1.00 50.46 C
HETATM 3935 **O4B** NAD **A** 255 10.768 -11.615 2.448 1.00 48.17 O
HETATM 3938 **C2B** NAD **A** 255 10.431 -13.759 1.675 1.00 48.46 C
HETATM 3940 **C1B** NAD **A** 255 11.323 -12.898 2.593 1.00 46.97 C
HETATM 3935 **O4B** NAD **A** 255 10.768 -11.615 2.448 1.00 48.17 O
HETATM 3940 **C1B** NAD **A** 255 11.323 -12.898 2.593 1.00 46.97 C
HETATM 3938 **C2B** NAD **A** 255 10.431 -13.759 1.675 1.00 48.46 C
HETATM 3936 **C3B** NAD **A** 255 10.445 -12.867 0.431 1.00 49.69 C
.
.
.
I have five level of paste sequence, v0,v1,v2,v3,v4.
Sequence is:
C4B-O4B-C1B-C2B
O4B-C1B-C2B-C3B
C1B-C2B-C3B-C4B
C2B-C3B-C4B-O4B
C3B-C4B-O4B-C1B
This all sequence, I want to print data as per above sequence. I have also edited expected result.
I want to sort data as per above sequence, chain wise. I am not getting expected result. I have tried in perl. I am new in perl and python... so please try to solve my problem
Its Like matrix problem:
for example we have five values: 1,2,3,4,5
Row 1 - 1 2 3 4
Row 2 - 2 3 4 5
Row 3 - 3 4 5 1
Row 4 - 4 5 1 2
I want to print data like that for each chain. Chain A to Z.