Metadata-Version: 2.1
Name: transformapy
Version: 0.0.6
Summary: A Toolkit for Identifying Transformation Product Structures of Emerging Contaminants Using HRMS Data
Home-page: https://github.com/WangRui5/TransformaPy
Author: Wang Rui
Author-email: wtrt7009@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Requires-Dist: pyhrms (>=0.9.2)

transformapy: A Toolkit for Identifying Transformation Product Structures of Emerging Contaminants Using HRMS Data
==================================================================================================================

transformapy is a Python toolkit engineered to process molecular structures, pinpointing potential transformation products of specified compounds by leveraging observed monoisotopic masses.

Contributor: Rui Wang
=====================

First release date: Feb.28.2024

Update
======

May.25.2024: transformapy 0.0.6

1. Updated the `is_valid_formula` function to account for cases without carbon (C).
2. Included a requirement to update `pyhrms` to the latest version.
3. Enhanced `generate_possible_TP_structures` to generate the most similar molecules based on molecular fingerprint similarity and to return intermediate steps.
4. Added the `one_step_reaction_based_on_fp` function.
5. Added the `stepwise_reaction_single_tp` function.
6. Added the `unfold_formula_result` function.
7. Added the `get_formula_elements_range` function.
8. Updated the `combine_fragments_and_generate_smiles` function.



Dependencies
============

transformapy requires the following major dependencies:

- rdkit
- pyhrms

Features
========

transformapy provides the following functions:

- Identifying Transformation Product Structures of Emerging Contaminants Using HRMS Data

Paper Published Utilizing transformapy
=======================================

- Preparing

Licensing
=========

The package is open source and can be utilized under the MIT license. Please find the detail in the license file.

transformapy Documentation
===========================

**Getting Started with transformapy**

.. code-block:: python

    from transformapy.transformapy import *

**Project Structure:**

.. code-block:: none

    transformapy/
    Step 1:
    |- from_mass_to_formula
       |- get_formula_elements_range

    Step 2:
    ｜- unfold_formula_result

    Step 3:
    |- generate_possible_TP_structures_to_df
       |- generate_possible_TP_structures
          |- modify_chemical_formula
          |- generate_fragments
          |- calculate_formula_differences
          |- combine_two_frags
          |- calculate_changed_num
             |- parse_formula
          |- stepwise_reaction_single_tp
             |- one_step_reaction_based_on_fp
                |- reaction_type
                   |- combine_fragments_and_generate_smiles
                   |- replace_dummies_with_hydrogens
                   |- replace_hydrogen_with_substituent
                   |- split_molecule_at_bond
                   |- Remove_2H
                      |- is_atom_in_double_bond
                      |- add_or_modify_bond
                      |- has_hydrogen_count
                   |- Add_2H
                   |- remove_additional_H
                      |- check_bad_valance_Hidx
                   |- add_missing_H

    |- remove_explicit_hydrogens
    |- draw_molecule_with_atom_indices
    |- GetIdxOfDummy
    |- adjust_valence_by_removing_hydrogen

Acknowledgment
==============

During the development of this package, Liu Huangrui from the South China Institute of Environmental Science offered essential support by conducting comprehensive tests on its functionality.

Note
====

Please note that the documentation is currently a work in progress, and there is more content that is being written. I apologize for any inconvenience this may cause, but rest assured that I am continually updating the documentation to provide you with the most comprehensive guide to using transformapy.


