mirror of
https://github.com/MillironX/cowcalf-rumen-metagenomic-pipeline.git
synced 2024-11-21 14:06:05 +00:00
Added predictive modeling capabilities
This commit is contained in:
parent
c5121e4ed6
commit
5343dceb1f
3 changed files with 110 additions and 2 deletions
14
main.sh
14
main.sh
|
@ -164,7 +164,7 @@ qiime composition add-pseudocount \
|
|||
--i-table feature-table.qza \
|
||||
--o-composition-table composition-table.qza
|
||||
|
||||
# Run ancom for CowID, Age, TrmtGroup
|
||||
# Run ancom for all categories in catcols
|
||||
# Once again, QIIME only uses one processor (even though this
|
||||
# is a HUGE task), so we should parallelize it for speed
|
||||
cat catcols.txt | \
|
||||
|
@ -175,6 +175,16 @@ cat catcols.txt | \
|
|||
--m-metadata-column {} \
|
||||
--o-visualization "visualizations/ancom-{}.qzv" \
|
||||
--verbose
|
||||
echo "--^-- X: Performing ANCOM...Done!"
|
||||
echo "--^-- X: Performing ANCOM...Done!"
|
||||
|
||||
# Create category-based predictive models
|
||||
cat catcols.txt | \
|
||||
xargs -P"$SLURM_NTASKS" -L1 srun -n1 -N1 --exclusive \
|
||||
./sample-classifier.sh
|
||||
|
||||
# Create continuous predictive models
|
||||
cat numcols.txt | \
|
||||
xargs -P"$SLURM_NTASKS" -L1 srun -n1 -N1 --exclusive \
|
||||
./sample-regression.sh
|
||||
|
||||
echo "All Done!"
|
49
sample-classifier.sh
Normal file
49
sample-classifier.sh
Normal file
|
@ -0,0 +1,49 @@
|
|||
#!/bin/bash
|
||||
#SBATCH --account=cowusda2016
|
||||
#SBATCH --ntasks=1
|
||||
#SBATCH --cpus-per-task=4
|
||||
#SBATCH --mem=8G
|
||||
|
||||
# Fetch the category we're working with from upstream
|
||||
CATEGORY=${1%}
|
||||
|
||||
# Save the folder name we will be saving everything into
|
||||
FOLDERNAME="${CATEGORY}-classifier"
|
||||
|
||||
# Load the required modules
|
||||
module restore system
|
||||
module load swset
|
||||
module load miniconda3
|
||||
|
||||
# Start up qiime
|
||||
source activate qiime2
|
||||
|
||||
# Make sure we have a clean slate to work with
|
||||
echo "--^-- X: Clearing previous classifier results..."
|
||||
rm -r "$FOLDERNAME"
|
||||
echo "--^-- X: Clearing previous classifier results...Done!"
|
||||
|
||||
# Solve the model
|
||||
echo "--^-- X: Constructing model..."
|
||||
qiime sample-classifier classify-samples \
|
||||
--i-table feature-table.qza \
|
||||
--m-metadata-file metadata.tsv \
|
||||
--m-metadata-column "$CATEGORY" \
|
||||
--p-n-jobs 4 \
|
||||
--p-missing-samples ignore \
|
||||
--p-optimize-feature-selection \
|
||||
--output-dir "$FOLDERNAME" \
|
||||
--verbose
|
||||
echo "--^-- X: Constructing model...Done!"
|
||||
|
||||
# Convert the model output into readable visualizations
|
||||
echo "--^-- X: Making visualizations..."
|
||||
qiime metadata tabulate \
|
||||
--m-input-file "${FOLDERNAME}/feature_importance.qza" \
|
||||
--o-visualization "${FOLDERNAME}/feature-importance.qzv"
|
||||
|
||||
qiime metadata tabulate \
|
||||
--m-input-file "${FOLDERNAME}/predictions.qza" \
|
||||
--m-input-file metadata.tsv \
|
||||
--o-visualization "${FOLDERNAME}/predictions.qzv"
|
||||
echo "--^-- X: Making visualizations...Done!"
|
49
sample-regression.sh
Normal file
49
sample-regression.sh
Normal file
|
@ -0,0 +1,49 @@
|
|||
#!/bin/bash
|
||||
#SBATCH --account=cowusda2016
|
||||
#SBATCH --ntasks=1
|
||||
#SBATCH --cpus-per-task=4
|
||||
#SBATCH --mem=8G
|
||||
|
||||
# Fetch the category we're working with from upstream
|
||||
CATEGORY=${1%}
|
||||
|
||||
# Save the folder name we will be saving everything into
|
||||
FOLDERNAME="${CATEGORY}-regression"
|
||||
|
||||
# Load the required modules
|
||||
module restore system
|
||||
module load swset
|
||||
module load miniconda3
|
||||
|
||||
# Start up qiime
|
||||
source activate qiime2
|
||||
|
||||
# Make sure we have a clean slate to work with
|
||||
echo "--^-- X: Clearing previous regression results..."
|
||||
rm -r "$FOLDERNAME"
|
||||
echo "--^-- X: Clearing previous regression results...Done!"
|
||||
|
||||
# Solve the model
|
||||
echo "--^-- X: Constructing model..."
|
||||
qiime sample-classifier regress-samples \
|
||||
--i-table feature-table.qza \
|
||||
--m-metadata-file metadata.tsv \
|
||||
--m-metadata-column "$CATEGORY" \
|
||||
--p-n-jobs 4 \
|
||||
--p-missing-samples ignore \
|
||||
--p-optimize-feature-selection \
|
||||
--output-dir "$FOLDERNAME" \
|
||||
--verbose
|
||||
echo "--^-- X: Constructing model...Done!"
|
||||
|
||||
# Convert the model output into readable visualizations
|
||||
echo "--^-- X: Making visualizations..."
|
||||
qiime metadata tabulate \
|
||||
--m-input-file "${FOLDERNAME}/feature_importance.qza" \
|
||||
--o-visualization "${FOLDERNAME}/feature-importance.qzv"
|
||||
|
||||
qiime metadata tabulate \
|
||||
--m-input-file "${FOLDERNAME}/predictions.qza" \
|
||||
--m-input-file metadata.tsv \
|
||||
--o-visualization "${FOLDERNAME}/predictions.qzv"
|
||||
echo "--^-- X: Making visualizations...Done!"
|
Loading…
Reference in a new issue