# scPECA
## Introduction
This is a python version of PECA2 gene regulatory
network construction software designed for single-cell data.
It has a faster running speed and a lower memory footprint.
## Installation
```commandline
pip install scPECA==2.0
```
## Run scPECA
### Input
scPECA requires to input the paired (sc)RNA-seq and (sc)ATAC-seq data,
and it provides data pre-processing in some formats.
(Pre-processing can also be done manually by the user)
#### Format 1
Paired bulk RNA-seq and ATAC-seq count data
sample_name_RNA.txt
<table>
<tr>
<td>gene1</td>
<td>10</td>
</tr>
<tr>
<td>gene2</td>
<td>3</td>
</tr>
</table>
sample_name_ATAC.txt
<table>
<tr>
<td>chr1_10000_10100</td>
<td>1</td>
</tr>
<tr>
<td>chr1_20000_20100 </td>
<td>0</td>
</tr>
</table>
#### Format 2
scRNA-seq count data and scATAC-seq count data within the same cluster
without meta information
sample_name_scRNA.csv
| | barcode1 | barcode2 |
|--------|----------|----------|
| gene1 | 1 | 19 |
| gene2 | 3 | 6 |
sample_name_scATAC.csv
| | barcode1 | barcode2 |
|------------------|----------|----------|
| chr1_10000_10100 | 1 | 0 |
| chr1_20000_20100 | 0 | 1 |
#### Format 3
scRNA-seq count data and scATAC-seq count data
with meta information
sample_name_scRNA.csv
| | barcode1 | barcode2 |
|--------|----------|----------|
| gene1 | 1 | 19 |
| gene2 | 3 | 6 |
sample_name_scRNA_meta.csv
<table>
<tr>
<td>barcode1</td>
<td>celltype1</td>
</tr>
<tr>
<td>barcode2</td>
<td>celltype2</td>
</tr>
</table>
sample_name_scATAC.csv
| | barcode1 | barcode2 |
|------------------|----------|----------|
| chr1_10000_10100 | 1 | 0 |
| chr1_20000_20100 | 0 | 1 |
sample_name_scATAC_meta.csv
<table>
<tr>
<td>barcode1</td>
<td>celltype1</td>
</tr>
<tr>
<td>barcode2</td>
<td>celltype2</td>
</tr>
</table>
#### Format 4
h5ad scRNA file with cell label
### Prior files
If you are the first time to run scPECA, please download the prior files as follows,
```
from scPECA.prior_install import figshare_download
import os
import scPECA
figshare_download(os.path.join(os.path.dirname(scPECA.__file__),'Prior.tar.gz'))
```
### Run example
```commandline
from scPECA.scPECA_main import scPECAclass
import scPECA
import os
# example 1
pkg_path = os.path.dirname(scPECA.__file__)
# demo data path
data_path = os.path.join(os.path.dirname(scPECA.__file__), 'Cones')
demo = scPECAclass(data_path, 'Cones', 'hg38', pkg_path) # Create a scPECA class
demo.RNA_process(2) # Format 2 RNA data processing
demo.ATAC_process(2) # Format 2 ATAC data processing
demo.network('Cones', data_path) # PECA2 GRN construction
# example 2
data_path = os.path.join(os.path.dirname(scPECA.__file__), '4cellline')
demo = scPECAclass(data_path, '4cellline', 'hg38', pkg_path)
demo.RNA_process(3)
demo.ATAC_process(3)
# example 3
data_path = os.path.join(os.path.dirname(scPECA.__file__), 'paul15')
demo = scPECAclass(data_path, 'paul15', 'mm10', pkg_path)
demo.RNA_process(4, 'paul15_clusters')
```
The details of other optional parameters can be viewed in python. All sample data has been downloaded with the software package.
### Output
sample_name_network.txt
TFTG_regulationScore.txt
### GRN Analysis Tools (example cell line: K562)
1. TFTG co-module analysis:
```
demo.co_module(celltype, num_clusters)
```
Result: TFmodule_result.txt, TGmodule_result.txt, co_module.png

2. TF layering
```
demo.tf_layer(celltype)
demo.top_tf_layer_plot(celltype)
```
Result: TF_layer.txt, top_TF_layer_graph.png

## System & Software Requirements
System: linux
Linux software: Homer
Python package: pybedtools, ismember, scipy, numpy_groupies,
## Considerations
1. RNA data preprocessing currently supports only hg38, hg19, mm10, mm9 genomes.
2. pybedtools may not support the latest version of
python and will require the creation of a new environment.
Raw data
{
"_id": null,
"home_page": "https://github.com/zhangjiahao1234/scPECA",
"name": "scPECA",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Jiahao Zhang",
"author_email": "zhangjiahao@amss.ac.cn",
"download_url": "https://files.pythonhosted.org/packages/10/9f/b5c7af25267b6e325b8dd07620891ac776ba673573e9fb8e7016c49aed10/scPECA-2.0.tar.gz",
"platform": null,
"description": "# scPECA\n## Introduction\nThis is a python version of PECA2 gene regulatory \nnetwork construction software designed for single-cell data.\nIt has a faster running speed and a lower memory footprint.\n\n## Installation\n```commandline\npip install scPECA==2.0\n```\n\n## Run scPECA\n### Input\nscPECA requires to input the paired (sc)RNA-seq and (sc)ATAC-seq data,\nand it provides data pre-processing in some formats. \n(Pre-processing can also be done manually by the user)\n#### Format 1\nPaired bulk RNA-seq and ATAC-seq count data\n\nsample_name_RNA.txt\n\n<table>\n <tr>\n \t\t<td>gene1</td> \n <td>10</td>\n </tr>\n <tr>\n <td>gene2</td> \n <td>3</td>\n </tr>\n</table>\n\nsample_name_ATAC.txt\n\n\n<table>\n <tr>\n \t\t<td>chr1_10000_10100</td> \n <td>1</td>\n </tr>\n <tr>\n <td>chr1_20000_20100 </td> \n <td>0</td>\n </tr>\n</table>\n\n#### Format 2\nscRNA-seq count data and scATAC-seq count data within the same cluster\nwithout meta information\n\nsample_name_scRNA.csv\n\n| | barcode1 | barcode2 |\n|--------|----------|----------|\n| gene1 | 1 | 19 |\n| gene2 | 3 | 6 |\n\nsample_name_scATAC.csv\n\n| | barcode1 | barcode2 |\n|------------------|----------|----------|\n| chr1_10000_10100 | 1 | 0 |\n| chr1_20000_20100 | 0 | 1 |\n\n#### Format 3\nscRNA-seq count data and scATAC-seq count data \nwith meta information\n\nsample_name_scRNA.csv\n\n| | barcode1 | barcode2 |\n|--------|----------|----------|\n| gene1 | 1 | 19 |\n| gene2 | 3 | 6 |\n\nsample_name_scRNA_meta.csv\n\n<table>\n <tr>\n \t\t<td>barcode1</td> \n <td>celltype1</td>\n </tr>\n <tr>\n <td>barcode2</td> \n <td>celltype2</td>\n </tr>\n</table>\n\nsample_name_scATAC.csv\n\n| | barcode1 | barcode2 |\n|------------------|----------|----------|\n| chr1_10000_10100 | 1 | 0 |\n| chr1_20000_20100 | 0 | 1 |\n\nsample_name_scATAC_meta.csv\n\n<table>\n <tr>\n \t\t<td>barcode1</td> \n <td>celltype1</td>\n </tr>\n <tr>\n <td>barcode2</td> \n <td>celltype2</td>\n </tr>\n</table>\n\n#### Format 4\nh5ad scRNA file with cell label\n\n\n\n\n### Prior files\n\nIf you are the first time to run scPECA, please download the prior files as follows,\n\n```\nfrom scPECA.prior_install import figshare_download\nimport os \nimport scPECA\nfigshare_download(os.path.join(os.path.dirname(scPECA.__file__),'Prior.tar.gz'))\n\n```\n\n### Run example\n\n\n```commandline\nfrom scPECA.scPECA_main import scPECAclass\nimport scPECA\nimport os\n\n# example 1\npkg_path = os.path.dirname(scPECA.__file__)\n# demo data path\ndata_path = os.path.join(os.path.dirname(scPECA.__file__), 'Cones')\ndemo = scPECAclass(data_path, 'Cones', 'hg38', pkg_path) # Create a scPECA class\ndemo.RNA_process(2) # Format 2 RNA data processing\ndemo.ATAC_process(2) # Format 2 ATAC data processing\ndemo.network('Cones', data_path) # PECA2 GRN construction\n\n# example 2\ndata_path = os.path.join(os.path.dirname(scPECA.__file__), '4cellline')\ndemo = scPECAclass(data_path, '4cellline', 'hg38', pkg_path)\ndemo.RNA_process(3) \ndemo.ATAC_process(3)\n\n# example 3\ndata_path = os.path.join(os.path.dirname(scPECA.__file__), 'paul15')\ndemo = scPECAclass(data_path, 'paul15', 'mm10', pkg_path)\ndemo.RNA_process(4, 'paul15_clusters') \n```\n\nThe details of other optional parameters can be viewed in python. All sample data has been downloaded with the software package.\n\n### Output \nsample_name_network.txt\n\nTFTG_regulationScore.txt\n\n### GRN Analysis Tools (example cell line: K562)\n\n1. TFTG co-module analysis:\n\n```\ndemo.co_module(celltype, num_clusters)\n```\nResult: TFmodule_result.txt, TGmodule_result.txt, co_module.png\n\n\n\n2. TF layering\n```\ndemo.tf_layer(celltype)\ndemo.top_tf_layer_plot(celltype)\n```\nResult: TF_layer.txt, top_TF_layer_graph.png\n\n\n\n\n## System & Software Requirements\nSystem: linux\n\nLinux software: Homer\n\nPython package: pybedtools, ismember, scipy, numpy_groupies, \n\n## Considerations\n\n1. RNA data preprocessing currently supports only hg38, hg19, mm10, mm9 genomes.\n2. pybedtools may not support the latest version of \npython and will require the creation of a new environment.\n\n\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "PECA2 gene regulatory network construction for single-cell data",
"version": "2.0",
"project_urls": {
"Homepage": "https://github.com/zhangjiahao1234/scPECA"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "24c8eea1b75f0474c80707db7f707a37ada1f572f4130c57c83014922eefa843",
"md5": "7335ec7db4ea2ece48578a00da536f5e",
"sha256": "84da630dc5ac4a1a802fdba7df3a89801675a0f34175a455d124830523e779c0"
},
"downloads": -1,
"filename": "scPECA-2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7335ec7db4ea2ece48578a00da536f5e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 12956777,
"upload_time": "2024-09-05T18:42:10",
"upload_time_iso_8601": "2024-09-05T18:42:10.800313Z",
"url": "https://files.pythonhosted.org/packages/24/c8/eea1b75f0474c80707db7f707a37ada1f572f4130c57c83014922eefa843/scPECA-2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "109fb5c7af25267b6e325b8dd07620891ac776ba673573e9fb8e7016c49aed10",
"md5": "2ce2e699d443c64adde58997fc764e5f",
"sha256": "41c4468ab93c7cd7ed63ef929428fc127bc8fb2f8854c2cd8a0c64668fd4fbad"
},
"downloads": -1,
"filename": "scPECA-2.0.tar.gz",
"has_sig": false,
"md5_digest": "2ce2e699d443c64adde58997fc764e5f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 14354,
"upload_time": "2024-09-05T18:42:13",
"upload_time_iso_8601": "2024-09-05T18:42:13.387368Z",
"url": "https://files.pythonhosted.org/packages/10/9f/b5c7af25267b6e325b8dd07620891ac776ba673573e9fb8e7016c49aed10/scPECA-2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-05 18:42:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "zhangjiahao1234",
"github_project": "scPECA",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "scpeca"
}