Metadata-Version: 2.4
Name: PyROTS
Version: 0.1.2
Summary: A Python API for ROTS
Project-URL: Homepage, https://bioconductor.org/packages/release/bioc/html/ROTS.html
Author-email: Taneli Pusa / MBC Core <mbc@utu.fi>
License-Expression: GPL-2.0-or-later
Requires-Dist: matplotlib>=3.10
Requires-Dist: numpy>=2.4
Requires-Dist: pandas>=2.3.3
Requires-Dist: rpy2>=3.6
Description-Content-Type: text/markdown

# PyROTS: Reproducibility-Optimized Test Statistic (in Python)

This is a Python wrapper for the [ROTS R package](https://master.bioconductor.org/packages/release/bioc/html/ROTS.html) which implements
the Reproducibility-Optimized Test Statistic for differential testing in omics data. This means that while this package is run entirely in Python,
underneath it runs an R process and the original R package. You do not need to care about all this, but you DO need to have R and the ROTS package installed.

You can install R from the R Project website: https://cran.r-project.org/.
After that, run the following in terminal to install ROTS
```
Rscript -e 'if (!require("BiocManager", quietly = TRUE)) install.packages("BiocManager"); BiocManager::install("ROTS")'
```

## Usage

Below is a minimal example that shows what the inputs should look like: data should be given as a pandas Data Frame and the group labels as a pandas Series.
Samples are in columns and the order should match with `groups`.

```
import numpy as np
import pandas as pd
from PyROTS import ROTS

data = pd.DataFrame(np.random.normal(size = (100,10)), index = ["gene_" + s for s in list(map(str,range(100)))])
groups = pd.Series(5*["A"]+5*["B"])
res = ROTS(data, groups)
```

Please consult the [documentation for the R package](https://master.bioconductor.org/packages/release/bioc/html/ROTS.html) for details about the method and functionality.

NB: This is a work in progress, some functions might not be available.