Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
91d6b94
Update README.md
zjupgx Oct 4, 2022
6b205fd
Update README.md
zjupgx Oct 4, 2022
0dc21a6
Update README.md
zjupgx Oct 4, 2022
e93a82b
Update README.md
zjupgx Oct 4, 2022
e653f9e
Update README.md
zjupgx Oct 4, 2022
d84ccd3
Merge branch 'zhouyx911:main' into main
zjupgx Oct 4, 2022
b9e35d8
Update README.md
zjupgx Oct 4, 2022
0a4d3b5
Update README.md
zjupgx Oct 4, 2022
dc13e42
Update README.md
zjupgx Oct 4, 2022
7299723
Update README.md
zjupgx Oct 4, 2022
3733b3f
Update README.md
zjupgx Oct 4, 2022
5cce814
Update README.md
zjupgx Oct 4, 2022
af6614b
Update README.md
zjupgx Oct 4, 2022
91eb31b
Merge branch 'zhouyx911:main' into main
zjupgx Oct 4, 2022
c60a28a
Merge branch 'zhouyx911:main' into main
zjupgx Oct 4, 2022
ce087f2
Merge branch 'zhouyx911:main' into main
zjupgx Oct 4, 2022
662eee1
Update README.md
zjupgx Oct 5, 2022
2a0bde2
Merge branch 'zhouyx911:main' into main
zjupgx Oct 9, 2022
6dfe1c4
Update README.md
zjupgx Oct 9, 2022
4ca9ea8
Update README.md
zjupgx Oct 9, 2022
52a830b
Update README.md
zjupgx Oct 9, 2022
9c7f49e
Merge branch 'zhouyx911:main' into main
zjupgx Feb 22, 2023
17a5ad7
Update README.md
zjupgx Feb 22, 2023
c83b47a
Update README.md
zjupgx Feb 22, 2023
149f5c8
Merge branch 'zhouyx911:main' into main
zjupgx Feb 22, 2023
38744c2
Update README.md
zjupgx Feb 22, 2023
f7da5f9
Update README.md
zjupgx Jun 13, 2023
9937c48
Update DeepCIP.py
zhouyx911 Jul 5, 2023
9709a3f
Merge pull request #1 from zhouyx911/patch-1
zjupgx Jul 5, 2023
20d3c53
Update README.md
zhouyx911 Mar 6, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion DeepCIP.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,8 @@ def DeepCIP_predict():
ires_labels.append(ires_label)

out_dir = './results'
if not os.path.exists(out_dir):
os.mkdir(out_dir)
out_name = args.input_file.split('/')[-1].split('.')[0]
outfile = f'{out_dir}/{out_name}_mode_{args.mode}.csv'

Expand All @@ -191,4 +193,4 @@ def DeepCIP_predict():
print('The prediction results were saved in {}'.format(outfile))

if __name__ == "__main__":
DeepCIP_predict()
DeepCIP_predict()
79 changes: 78 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,78 @@
# DeepCIP
# DeepCIP
DeepCIP is a **Deep** learning method for **C**ircRNA **I**RES **P**rediction.

## System Requirments
DeepCIP needs to run on a Linux operating system (e.g. Debian 11.3) with the following software installed.
### Software Requirments:
* Python3.8
* Perl (Recommended v5.32.1)
* Anaconda


## The ViennaRNA package installation
RNAplfold from ViennaRNA version 2.5.1 is required to predict RNA secondary structure in DeepCIP. You need to install the ViennaRNA package before you start to use DeepCIP.

First, download the ViennaRNA package from [ViennaRNA-2.5.1.tar.gz](https://www.tbi.univie.ac.at/RNA/download/sourcecode/2_5_x/ViennaRNA-2.5.1.tar.gz) .

Then, install ViennaRNA package:
```
tar -zxvf ViennaRNA-2.5.1.tar.gz
cd ViennaRNA-2.5.1
./configure
make
make install
```
For more details, see https://github.com/ViennaRNA/ViennaRNA

## Seqkit installation
DeepCIP relies on Seqkit to process RNA sequences (eg. subsequence segmentation).

You can download Seqkit from https://bioinf.shenwei.me/seqkit/download/

Reference: W Shen, S Le, Y Li*, F Hu*. SeqKit: a cross-platform and ultrafast toolkit for FASTA/Q file manipulation. PLOS ONE. doi:10.1371/journal.pone.0163962.

## Installation of DeepCIP and its environment
First, download the repository and create the environment.
```
git clone https://github.com/zjupgx/DeepCIP.git
cd ./DeepCIP
conda env create -f environment.yml
```
Then, activate the "DeepCIP_pytorch" environment.
```
conda activate DeepCIP_pytorch
```

## Usage
### Run DeepCIP for circRNA IRES prediction
The file prepared for prediction should be put into folder ./data.
Then, type the following command to start the prediction, with parameters set according to your needs.

For example:
```
python DeepCIP.py -n example -i circires_case.fa
```
For more options:
```
python DeepCIP.py --help
```
```
usage: DeepCIP.py [-h] -n -i [-b] [-c] [-m] [-w] [-s] [-r ]

optional arguments:
-h, --help show this help message and exit
-n , --data_name The name of your input dataset.
-i , --input_file Input file for prediction. (*.fasta or *.fa file)
-b , --batch_size Batch size. (default=16) "--bs 16" means every 16 sampels constitute a prediction batch. This parameter affects the speed and results of the prediction. The larger the batch size, the faster the prediction, as far as your machine allows. (If the lengths of your input sequences vary greatly, it is recommended that you do not use a large batch size, or you can put sequences of similar lengths together for prediction)
-c , --cut_off Prediction threshold. (default=0.5)
-m , --mode The mode of prediction. (default=0) mode 0: Prediction directly on the input sequence. mode 1: The input sequence is partitioned by length w and interval s, and then the partitioned sequence is predicted. (w and s can be set by --w and --s, respectively)
mode 2:
-w , --window_size window size (default=174). See --mode description. It can be ignore when mode not is 1.
-s , --step step (default=50). See --mode description. It can be ignore when mode not is 1.
-r , --region region of circRNA detection. e.g -r 1 12 for first 12 bases, -r -12 -1 for last 12 bases, -r 13 -1 for cutting first 12 bases. See --mode description. It can be ignore when mode not is 2.
```

The result will be saved as a csv format file.

## Datasets
Raw data used in our study can be avaliable in [GSE178718_Oligo_eGFP_expression](https://www.ncbi.nlm.nih.gov/geo/download/?acc=GSE178718&format=file&file=GSE178718%5FOligo%5FeGFP%5Fexpression%2Exlsx) and [55k_oligos](https://bitbucket.org/alexeyg-com/irespredictor/src/v2/data/)