proteomicruler


Nameproteomicruler JSON
Version 0.1.2 PyPI version JSON
download
home_pagehttps://github.com/noatgnu/proteomicRuler
SummaryEstimate copy number from deep profile MS experiment using the Proteomic Ruler algorithm from Wiśniewski, J. R., Hein, M. Y., Cox, J. and Mann, M. (2014) A “Proteomic Ruler” for Protein Copy Number and Concentration Estimation without Spike-in Standards. Mol Cell Proteomics 13, 3497–3506.
upload_time2023-03-22 17:49:49
maintainer
docs_urlNone
authorToan K. Phung
requires_python>=3.9,<3.12
licenseMIT
keywords proteomic ruler histone mass spectrometry
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Proteomic Ruler
--

An implementation of the same algorithm from Perseus `Wiśniewski, J. R., Hein, M. Y., Cox, J. and Mann, M. (2014) A “Proteomic Ruler” for Protein Copy Number and Concentration Estimation without Spike-in Standards. Mol Cell Proteomics 13, 3497–3506.` used for estimation of protein copy number from deep profile experiment.

Requirements
--

Python >= 3.9

Installation
--
```bash
pip install proteomicruler
```

Usage
--

In order to use the package, it is required that the input data is loaded into a `pandas.DataFrame` object. The following
basic parameters are also required:
- `accession_id_col` - column name that contains protein accession ids
- `mw_col` - column name that contains molecular weight of proteins
- `ploidy` - ploidy number
- `total_cellular_protein_concentration` - total cellular protein concentration used for calculation of total volume
- `intensity_columns` - list of column names that contain sample intensities

```python
import pandas as pd

accession_id_col = "Protein IDs"
# used as unique index and to directly fetch mw data from UniProt

mw_col = "Mass"
# molecular weight column name

ploidy = 2
# ploidy number

total_cellular_protein_concentration = 200
# cellular protein concentration used for calculation of total volume

filename = r"example_data\example_data.tsv" # example data from Perseus
df = pd.read_csv(filename, sep="\t")

# selecting intensity columns
intensity_columns = df.columns[57:57+16] # select 16 columns starting from column 57th that contain sample intensity



```

If the data does not contain molecular weight information, it is required to fetch it from UniProt.

```python
from proteomicRuler.ruler import add_mw

df = add_mw(df, accession_id_col)
df = df[pd.notnull(df[mw_col])]
df[mw_col] = df[mw_col].astype(float)
```

The RuleR object can be created by passing the `DataFrame` object and the required parameters.

```python
from proteomicRuler.ruler import Ruler

ruler = Ruler(df, intensity_columns, mw_col, accession_id_col, ploidy, total_cellular_protein_concentration) #
ruler.df.to_csv("output.txt", sep="\t", index=False)
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/noatgnu/proteomicRuler",
    "name": "proteomicruler",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9,<3.12",
    "maintainer_email": "",
    "keywords": "proteomic,ruler,histone,mass spectrometry",
    "author": "Toan K. Phung",
    "author_email": "toan.phungkhoiquoctoan@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/fc/93/ffd80a1799f9022a4d252a2ba75c9374b2e1205a610a70a7ba696a39898a/proteomicruler-0.1.2.tar.gz",
    "platform": null,
    "description": "Proteomic Ruler\n--\n\nAn implementation of the same algorithm from Perseus `Wi\u015bniewski, J. R., Hein, M. Y., Cox, J. and Mann, M. (2014) A \u201cProteomic Ruler\u201d for Protein Copy Number and Concentration Estimation without Spike-in Standards. Mol Cell Proteomics 13, 3497\u20133506.` used for estimation of protein copy number from deep profile experiment.\n\nRequirements\n--\n\nPython >= 3.9\n\nInstallation\n--\n```bash\npip install proteomicruler\n```\n\nUsage\n--\n\nIn order to use the package, it is required that the input data is loaded into a `pandas.DataFrame` object. The following\nbasic parameters are also required:\n- `accession_id_col` - column name that contains protein accession ids\n- `mw_col` - column name that contains molecular weight of proteins\n- `ploidy` - ploidy number\n- `total_cellular_protein_concentration` - total cellular protein concentration used for calculation of total volume\n- `intensity_columns` - list of column names that contain sample intensities\n\n```python\nimport pandas as pd\n\naccession_id_col = \"Protein IDs\"\n# used as unique index and to directly fetch mw data from UniProt\n\nmw_col = \"Mass\"\n# molecular weight column name\n\nploidy = 2\n# ploidy number\n\ntotal_cellular_protein_concentration = 200\n# cellular protein concentration used for calculation of total volume\n\nfilename = r\"example_data\\example_data.tsv\" # example data from Perseus\ndf = pd.read_csv(filename, sep=\"\\t\")\n\n# selecting intensity columns\nintensity_columns = df.columns[57:57+16] # select 16 columns starting from column 57th that contain sample intensity\n\n\n\n```\n\nIf the data does not contain molecular weight information, it is required to fetch it from UniProt.\n\n```python\nfrom proteomicRuler.ruler import add_mw\n\ndf = add_mw(df, accession_id_col)\ndf = df[pd.notnull(df[mw_col])]\ndf[mw_col] = df[mw_col].astype(float)\n```\n\nThe RuleR object can be created by passing the `DataFrame` object and the required parameters.\n\n```python\nfrom proteomicRuler.ruler import Ruler\n\nruler = Ruler(df, intensity_columns, mw_col, accession_id_col, ploidy, total_cellular_protein_concentration) #\nruler.df.to_csv(\"output.txt\", sep=\"\\t\", index=False)\n```\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Estimate copy number from deep profile MS experiment using the Proteomic Ruler algorithm from Wi\u015bniewski, J. R., Hein, M. Y., Cox, J. and Mann, M. (2014) A \u201cProteomic Ruler\u201d for Protein Copy Number and Concentration Estimation without Spike-in Standards. Mol Cell Proteomics 13, 3497\u20133506.",
    "version": "0.1.2",
    "split_keywords": [
        "proteomic",
        "ruler",
        "histone",
        "mass spectrometry"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aacfe25fc5bdd8a20826e243d75944608783233200726a5ff1c3834ec4cc9cdd",
                "md5": "42e900a73bf2719dcdd7dd396d4ba0f6",
                "sha256": "7eec54c869b87c4410414b94407be095f85efefe7b692f0d1b6a7cd85461fc9e"
            },
            "downloads": -1,
            "filename": "proteomicruler-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "42e900a73bf2719dcdd7dd396d4ba0f6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<3.12",
            "size": 8816,
            "upload_time": "2023-03-22T17:49:48",
            "upload_time_iso_8601": "2023-03-22T17:49:48.536696Z",
            "url": "https://files.pythonhosted.org/packages/aa/cf/e25fc5bdd8a20826e243d75944608783233200726a5ff1c3834ec4cc9cdd/proteomicruler-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc93ffd80a1799f9022a4d252a2ba75c9374b2e1205a610a70a7ba696a39898a",
                "md5": "c97e2619ef1384a47a0942eaa2b37d2f",
                "sha256": "d26c8c77d39888de07571c163897b7d8c57aa71d4d756bc3083ce0e6387d1be6"
            },
            "downloads": -1,
            "filename": "proteomicruler-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "c97e2619ef1384a47a0942eaa2b37d2f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<3.12",
            "size": 8008,
            "upload_time": "2023-03-22T17:49:49",
            "upload_time_iso_8601": "2023-03-22T17:49:49.976496Z",
            "url": "https://files.pythonhosted.org/packages/fc/93/ffd80a1799f9022a4d252a2ba75c9374b2e1205a610a70a7ba696a39898a/proteomicruler-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-22 17:49:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "noatgnu",
    "github_project": "proteomicRuler",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "proteomicruler"
}
        
Elapsed time: 0.04709s