Release Notes

The CHANGELOG for the current development version is available at https://github.com/rasbt/biopandas/blob/main/docs/sources/CHANGELOG.md.

0.5.0dev (UNRELEASED)

Downloads
New Features
  • Added a new PandasMmcif.convert_to_pandas_pdb() class that converts the mmCIF file into a PDB structure. (Via Arian Jamasb, PR #107)
  • Added ability to write PDBs to a filestream (Via Arian Jamasb, PR #107)
  • Adds a method PandasPdb.gyradius to calculate the radius of gyration of a molecule (via goniochromatic, PR #117)
  • Adds MMTF export & improves MMTF parsing robustness (via Arian Jamasb, PR #119)
  • Adds support for parsing MMTF files. (via Arian Jamasb, PR #111)
  • Adds primitive functions for parsing PDB, mmCIF, and MMTF into dataframes. (via Arian Jamasb, PR #111)
  • Added support for AlphaFolds 200M+ structures via PandasMmcif().fetch_mmcif(uniprot_id='Q5VSL9', source='alphafold2-v3') and PandasPdb().fetch_pdb(uniprot_id='Q5VSL9', source='alphafold2-v3'). (Via Arian Jamasb, PR #102)
Bug Fixes
  • Fix the return statement in PandasPdb.to_pdb_stream() to return output instead of output.seek(0). (via goniochromatic, PR #116)
  • Change the records default argument in PandasPdb.to_pdb_stream() to be immutable. (via goniochromatic, PR #116)
  • Fix some typos and general style issues. (via goniochromatic, PR #116)
  • Fix link for "How to contribute" in README.md. (via goniochromatic, PR #116)

0.4.1 (05-13-2022)

Downloads
Changes
  • Remove walrus operator for Python 3.7 compatibility.

0.4.0 (05-11-2022)

Downloads
New Features
  • Adds support for extracting structures from PDB files containing multiple models. See the documentation for details. (via Arian Jamasb, PR #101).

  • Adds support for fetching mmCIF (PandasMmcif().fetch_mmcif(uniprot_id='Q5VSL9', source='alphafold2-v2')) and PDB structures (e.g., PandasPdb().fetch_pdb(uniprot_id='Q5VSL9', source="alphafold2-v2")) (via Arian Jamasb, PR #102).

Changes
  • Instead of raising a warning when no ATOM entries are loaded, raise the warning only when neither ATOM nor HETAM entries are loaded.
Bug Fixes
  • None

0.3.0 (04-06-2022)

Downloads
New Features
  • Adds support for parsing mmCIF protein structure files (via Arian Jamasb, PR #94)
Changes
  • -
Bug Fixes
  • Fixes a bug where coordinates with more than 4 digits before the decimal point caused a column shift when saving a PDB file. (via PR #90)
  • Fixes a bug where the invert parameter in get_carbon was selecting the wrong case. (via Arian Jamasb PR #96)

0.2.9 (08-30-2021)

Downloads
New Features
  • -
Changes
  • Now also allow .ent and .ent.gz file endings for PDB files. (via PR #82
  • Added Python 3.8 and 3.9 to setup.py in order to support these versions via conda-forge. (via PR #87
Bug Fixes
  • -

0.2.8 (03-30-2021)

Downloads
New Features
  • A PandasPdb.read_pdb_from_list method was added analogous to the existing PandasMol2.read_mol2_from_list (via PR #72 by dominiquesydow)
Changes
  • ValueError raising and improved file format error messages for read_pdb and read_mol2 functionality. (via PR #73 by dominiquesydow)
Bug Fixes
  • -

0.2.7 (08-04-2020)

Downloads
New Features
  • -
Changes
  • -
Bug Fixes
  • Fix Manifest file to include license file in the PyPI tar.gz file so that BioPandas can be packaged by conda-forge.

0.2.6 (08-03-2020)

Downloads
New Features
  • -
Changes
  • Uses more modern https queries for the RCSB server via the fetch_pdb function.
  • Updates the documentation (incl. a code of conduct)
Bug Fixes
  • -

0.2.5 (07-09-2019)

Downloads
New Features
  • -
Changes
  • -
Bug Fixes
  • The PandasPdb.amino3to1 method now also considers insertion codes when converting the amino acid codes; before, inserted amino acides were skipped.

0.2.4 (02-05-2019)

Downloads
New Features
  • -
Changes
  • Minor adjustments to support to address deprecation warnings in pandas >= 23.0
Bug Fixes
  • -

0.2.3 (03-29-2018)

Downloads
New Features
  • -
Changes
  • PandasMol2.distance_df was added as a static method that allows distance computations based for external data frames with its behavior otherwise similar to PandasMol2.distance.
  • PandasPdb.distance_df was added as a static method that allows distance computations based for external data frames with its behavior otherwise similar to PandasPdb.distance.
  • PandasPdb.distance now supports multiple record sections to be considered (e.g., records=('ATOM', 'HETATM') to include both protein and ligand in a query. Now also defaults to records=('ATOM', 'HETATM') for concistency with the impute method.
  • PandasPdb.get(...) now supports external data frames and lets the user specify the record section to be considered (e.g., records=('ATOM', 'HETATM') to include both protein and ligand in a query. Now also defaults to records=('ATOM', 'HETATM') for concistency with the impute method.
  • The section parameter of PandasPdb.impute_element(...) was renamed to records for API consistency.
Bug Fixes

-

0.2.2 (06-07-2017)

Downloads
New Features
  • -
Changes
  • Raises a meaningful error message if attempting to overwrite the df attributes of PandasMol2 and PandasPdb directly.
  • Added PandasPdb.pdb_path and PandasMol2.mol2_path attributes that store the location of the data file last read.
Bug Fixes
  • The rmsd methods of PandasMol2 and PandasPdb don't return a NaN anymore if the array indices of to structures are different.

0.2.1 (2017-05-11)

Downloads
New Features
  • -
Changes
  • The amino3to1 method of biopandas.pdb.PandasPDB objects now returns a pandas DataFrame instead of a pandas Series object. The returned data frame has two columns, 'chain_id' and 'residue_name', where the former contains the chain ID of the amino acid and the latter contains the 1-letter amino acid code, respectively.
  • Significant speed improvements of the distance method of both PandasPdb and PandasMol2 (now about 300 percent faster than previously).
Bug Fixes
  • The amino3to1 method of biopandas.pdb.PandasPDB objects now handles multi-chain proteins correctly.
  • The amino3to1 method of biopandas.pdb.PandasPDB objects now also works as expected if the 'ATOM' entry DataFrame contains disordered DataFrame indices or duplicate DataFrame index values.

0.2.0 (2017-04-02)

Downloads
New Features
  • Added an amino3to1 method to PandasPdb data frames to convert 3-amino acid letter codes to 1-letter codes.
  • Added a distance method to PandasPdb data frames to compute the Euclidean distance between atoms and a reference point.
  • Added the PandasMol2 class for working with Tripos MOL2 files in pandas DataFrames.
Changes
  • PandasPDB was renamed to PandasPdb.
  • Raises a warning if PandasPdb is written to PDB and ATOM and HETAM section contains unexpected columns; these columns will now be skipped.
Bug Fixes
  • -

0.1.5 (2016-11-19)

Downloads
New Features
  • Added an impute_element method to PandasPDB objects to infer the Element Symbol from the Atom Name column.
  • Added two new selection types for PandasPDB ATOM and HETATM coordinate sections: 'heavy' and 'carbon'.
Changes
  • Include test data in the PyPI package; add install_requires for pandas.
  • The 'hydrogen' atom selection in PandasPDB methods is now based on the element type instead of the atom name.
  • By default, the RMSD is now computed on all atoms unless a specific selection is defined.
Bug Fixes
  • -

0.1.4 (2015-11-24)

Downloads
New Features

-

Changes
  • Needed to bump the version number due to a bug in the PyPI setup.py script.
  • Support for the old pandas sorting syntax (DataFrame.sort vs DataFrame.sort_values) incl. DeprecationWarning.
Bug Fixes

-

0.1.3 (2015-11-23)

New Features

-

Changes

-

Bug Fixes
  • Exception handling in tests if PDB goes down (which just happened).
  • Added a separate ANISOU engine to handle those records correctly.

0.1.2 (2015-11-23)

  • First Release.