mm-fitting


Namemm-fitting JSON
Version 1.1 PyPI version JSON
download
home_page
SummaryMethods to compute Michaelis-Menten equation parameters and statistics.
upload_time2023-11-21 21:40:02
maintainer
docs_urlNone
author
requires_python>=3.9
licenseMIT License Copyright (c) 2022-2023 António Ferreira Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restrict byion, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords michaelis-menten equation parameter estimation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Michaelis-Menten equation fitting to data

A Python module that implements five methods to fit the Michaelis-menten equation to a set of points of rate vs substrate concentration.

The methods are:

- Non-linear regression (Levemberg-Marquard algorithm applied to Michaelis-Menten equation)
- The Direct Linear Plot
- The Lineweaver-Burk linearization
- The Hanes linearization
- The Eddie-Hofstee linearization

### Short usage:

Given two `numpy` 1D-arrays, `a` and `v0` containing substrate concentrations and initial rates, respectively,

``` python3
results = mm_fitting.compute_methods(a, v0)
```

will apply all five methods and generate a `dict` with keys `a` and `v0` and `results`. The value of
`results` will be a list of namedtuples containg the results for each method.

### `numpy`-only dependency

All methods are implemented in numpy and do not require either `scipy` or data analysis module like `pandas`:

- linearizations are computed by a thin wrapper of `numpy.polyfit()` with degree one.
- non-linear regression is computed using a numpy-only version of the Levemberg-Marquard algorithm. Code was adapted from Abner Bogan's Github repo for a numpy-only version of the algorithm ([abnerbog/
levenberg-marquardt-method
](https://github.com/abnerbog/levenberg-marquardt-method)).

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "mm-fitting",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "Michaelis-Menten equation,parameter estimation",
    "author": "",
    "author_email": "Ant\u00f3nio Ferreira <ferreiae@gmail.com>",
    "download_url": "",
    "platform": null,
    "description": "# Michaelis-Menten equation fitting to data\r\n\r\nA Python module that implements five methods to fit the Michaelis-menten equation to a set of points of rate vs substrate concentration.\r\n\r\nThe methods are:\r\n\r\n- Non-linear regression (Levemberg-Marquard algorithm applied to Michaelis-Menten equation)\r\n- The Direct Linear Plot\r\n- The Lineweaver-Burk linearization\r\n- The Hanes linearization\r\n- The Eddie-Hofstee linearization\r\n\r\n### Short usage:\r\n\r\nGiven two `numpy` 1D-arrays, `a` and `v0` containing substrate concentrations and initial rates, respectively,\r\n\r\n``` python3\r\nresults = mm_fitting.compute_methods(a, v0)\r\n```\r\n\r\nwill apply all five methods and generate a `dict` with keys `a` and `v0` and `results`. The value of\r\n`results` will be a list of namedtuples containg the results for each method.\r\n\r\n### `numpy`-only dependency\r\n\r\nAll methods are implemented in numpy and do not require either `scipy` or data analysis module like `pandas`:\r\n\r\n- linearizations are computed by a thin wrapper of `numpy.polyfit()` with degree one.\r\n- non-linear regression is computed using a numpy-only version of the Levemberg-Marquard algorithm. Code was adapted from Abner Bogan's Github repo for a numpy-only version of the algorithm ([abnerbog/\r\nlevenberg-marquardt-method\r\n](https://github.com/abnerbog/levenberg-marquardt-method)).\r\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2022-2023 Ant\u00f3nio Ferreira  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restrict byion, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
    "summary": "Methods to compute Michaelis-Menten equation parameters and statistics.",
    "version": "1.1",
    "project_urls": null,
    "split_keywords": [
        "michaelis-menten equation",
        "parameter estimation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "32c1e9c5ddc6f4b8834cb4cec361fcadd5a2169b5e309e6660e5307347cfee0c",
                "md5": "ef45fed435832fc72639fde5d705401f",
                "sha256": "8e19d6d662da8ff5625b4f60c6b401544775c8a00f4282c56588d7ee1491670c"
            },
            "downloads": -1,
            "filename": "mm_fitting-1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ef45fed435832fc72639fde5d705401f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 7671,
            "upload_time": "2023-11-21T21:40:02",
            "upload_time_iso_8601": "2023-11-21T21:40:02.563643Z",
            "url": "https://files.pythonhosted.org/packages/32/c1/e9c5ddc6f4b8834cb4cec361fcadd5a2169b5e309e6660e5307347cfee0c/mm_fitting-1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-21 21:40:02",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mm-fitting"
}
        
Elapsed time: 3.18035s