[BioRuby] Bio::PDB parsing problem (1B2M)
Alex Gutteridge
alexg at ruggedtextile.com
Sat Mar 29 14:03:12 UTC 2008
Hi Semin,
Definately a parser error - the combined HETATM/ATOM chains are
confusing it, but they shouldn't. If you have the time and the
inclination then patches are very welcome. If not, I can try and take
a look next week.
AlexG
On 28 Mar 2008, at 23:27, Semin Lee wrote:
> Hi guys,
>
> I've got some problems when parsing 1B2M PDB file using Bio::PDB. It
> doesn't seem to parse chain C to E properly. I'm currently using
> BioRuby gem ver. 1.2.1 and Ruby 1.8.6 on Mac OS X Leopard.
>
> >> require "bio"
> => true
> >> require "open-uri"
> => true
> >> pdb = Bio::PDB.new(open("http://www.rcsb.org/pdb/files/
> 1b2m.pdb").read)
> => #<Bio::PDB entry_id="1B2M">
> >> p pdb.models.first.chains
> ArgumentError: ArgumentError
> from /opt/local/lib/ruby/gems/1.8/gems/bio-1.2.1/lib/bio/data/
> aa.rb:184:in `three2one'
> from /opt/local/lib/ruby/gems/1.8/gems/bio-1.2.1/lib/bio/db/
> pdb/chain.rb:192:in `aaseq'
> from /opt/local/lib/ruby/gems/1.8/gems/bio-1.2.1/lib/bio/db/
> pdb/chain.rb:186:in `each'
> from /opt/local/lib/ruby/gems/1.8/gems/bio-1.2.1/lib/bio/db/
> pdb/chain.rb:186:in `aaseq'
> from /opt/local/lib/ruby/gems/1.8/gems/bio-1.2.1/lib/bio/db/
> pdb/chain.rb:178:in `inspect'
> from (irb):4:in `p'
> from (irb):4
> >>
>
> a strange error occurred, but I just overrided(?) 'aaseq' method to
> see what happens,
>
> >> module Bio
> >> class PDB
> >> class Chain
> >> def aaseq
> >> ""
> >> end
> >> end
> >> end
> >> end
> => nil
> >> pp pdb.models.first.chains
> [#<Bio::PDB::Chain id="A" model.serial=nil residues.size=104
> heterogens.size=0 aaseq="">,
> #<Bio::PDB::Chain id="B" model.serial=nil residues.size=104
> heterogens.size=0 aaseq="">,
> #<Bio::PDB::Chain id="C" model.serial=nil residues.size=1
> heterogens.size=1 aaseq="">,
> #<Bio::PDB::Chain id="D" model.serial=nil residues.size=0
> heterogens.size=0 aaseq="">,
> #<Bio::PDB::Chain id="E" model.serial=nil residues.size=0
> heterogens.size=0 aaseq="">,
> #<Bio::PDB::Chain id=" " model.serial=nil residues.size=0
> heterogens.size=92 aaseq="">]
> => nil
> >>
>
> Now it doesn't complain, but Bio::PDB::Chain for chain D and E have
> wrong number of residues and heterogens. In the 1B2M PDB file, each
> chain D and E also has a RNA residue and a heterogen, U34, just like
> chain C. However, Bio::PDB::Chain for chain D and E have no residues
> and heterogens. Does anyone have any ideas? Or, am I missing
> something?
>
> Cheers,
> Semin
>
> _______________________________________________
> BioRuby mailing list
> BioRuby at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioruby
>
More information about the BioRuby
mailing list