Skip to main content

No project description provided

Project description

Coral (c-core)

Overview

Coral is a tool for analyzing proteomics data. It provides functionalities for data preprocessing, normalization, imputation, and statistical analysis using the limma package in R.

Docker Image Build

Building Your Own Docker Image

Building your own Docker image is optional. You can use the pre-built image from Docker Hub.

docker build . -t coral -f dockerfile/Dockerfile

Running from Built Docker Image

docker run --rm -v "./data:/data" coral -u "/data/For_Curtain_Raw_PPM1H- PROTAC_TP.txt" -a "/data/annotation.txt" -o "/data/output.txt" -c "/data/comparison.txt" -x "T: Index,T: Gene"

Running from Docker Hub Image

docker run --rm -v "./data:/data" noatgnu/coral:0.0.1 -u "/data/For_Curtain_Raw_PPM1H- PROTAC_TP.txt" -a "/data/annotation.txt" -o "/data/output.txt" -c "/data/comparison.txt" -x "T: Index,T: Gene"

Installation

Pip Install

Install R and set the R_HOME environment variable to the R installation directory. Also, install the QFeatures package and its dependencies.

pip install ccore-coral

Running from Pip Install

coral -u "/data/For_Curtain_Raw_PPM1H- PROTAC_TP.txt" -a "/data/annotation.txt" -o "/data/output.txt" -c "/data/comparison.txt" -x "T: Index,T: Gene"

CLI Usage

usage: coral [-h] [-u unprocessed] [-a annotation] [-o output] [-c comparison] [-x index] [-f column_na_filter_threshold] [-r row_na_filter_threshold] [-i imputation_method] [-n normalization_method] [-g aggregation_method] [-t aggregation_column]

Options:
    -u unprocessed, --unprocessed unprocessed
                        Filepath to the unprocessed data file.
    -a annotation, --annotation annotation
                        Filepath to the annotation file.
    -o output, --output output
                        Filepath to the output file.
    -c comparison, --comparison comparison
                        Filepath to the comparison file.
    -x index, --index index
                        Column names to be used as index.
    -f column_na_filter_threshold, --column_na_filter_threshold column_na_filter_threshold
                        Threshold for column-wise NA filtering.
    -r row_na_filter_threshold, --row_na_filter_threshold row_na_filter_threshold
                        Threshold for row-wise NA filtering.
    -i imputation_method, --imputation_method imputation_method
                        Method for imputation.
    -n normalization_method, --normalization_method normalization_method
                        Method for normalization.
    -g aggregation_method, --aggregation_method aggregation_method
                        Method for aggregation.
    -t aggregation_column, --aggregation_column aggregation_column
                        Column name to be used for aggregation.

Usage as a Module

import pandas as pd
from coral.data import Coral

coral = Coral()
# Read in the unprocessed data
coral.load_unproccessed_file("data/For_Curtain_Raw_PPM1H- PROTAC_TP.txt")
# Add sample column names
coral.add_sample("...")
# Add condition or group names
coral.add_condition("...")
# Add sample group mapping
coral.add_condition_map("condition_name", "sample_name")
# Add comparison
coral.add_comparison("condition_A", "condition_B", "comparison_name")
# Add index columns
coral.index_columns = ["index_column_name"]
# Filter columns by NA
coral.filter_missing_columns(0.7)
# Create QFeatures object
coral.prepare()
# Filter rows by NA
coral.filter_missing_rows(0.7)
# Impute missing values
coral.impute("knn")
# Log2 transform
coral.log_transform()
# Aggregate features
coral.aggregate_features("new_feature_column")
# Normalize
coral.normalize()
# Prepare limma matrix
coral.prepare_for_limma()
# Run limma
results = []
for d in coral.run_limma():
    results.append(d)
if len(results) > 1:
    # Merge limma results
    results = pd.concat(results)
else:
    results = results[0]
# Write results
results.to_csv("output.txt", sep="\t", index=False)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ccore_coral-0.1.5.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ccore_coral-0.1.5-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file ccore_coral-0.1.5.tar.gz.

File metadata

  • Download URL: ccore_coral-0.1.5.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.12 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for ccore_coral-0.1.5.tar.gz
Algorithm Hash digest
SHA256 2e04a7272abecadd828dc1d5c8387b7f6c1bfbd25af1f36faf52b96847001ba8
MD5 825d8badbfaead51d61e30267aede9cd
BLAKE2b-256 c4314f640623813831c836a94a2ab11da5fd700a13204e8741f8dace7fcbe52f

See more details on using hashes here.

File details

Details for the file ccore_coral-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: ccore_coral-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.10.12 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for ccore_coral-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 89f35e3fe7052707d03368819cb539b220e9d623afd784096d503e486fd6c411
MD5 393e7b5004b6d6098d7306d967a9aa7c
BLAKE2b-256 e4083ad090803f34b6e9b60851cb8b4f918d38bc4fdad9507aa2ac81f07509c9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page