-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrun.sh
executable file
·96 lines (85 loc) · 3.34 KB
/
run.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/bin/bash
#SBATCH --job-name=phamer
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --partition=long
#SBATCH --mem-per-cpu=8000
#SBATCH --mem=24000
#SBATCH --time=12:00:00
#SBATCH --error=/local10G/jdeaton/PhaMers/outputs/error-%A.out
#SBATCH --output=/local10G/jdeaton/PhaMers/outputs/log-%A.out
scratch=$LOCAL_SATA
now=`date +%Y-%m-%d.%H.%M.%S`
do_taxonomy=false
do_cross_validation=true
do_phamer=false
do_analysis=false
run_bijah_road_side4=false
run_lower_geyser_basin=true
run_sulfolobus_or_acidianus=false
# Locations
REPO="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # discovers the directory that this script is sitting in
home=~ # meh
python=$home"/anaconda2/bin/python"
phamer_directory=$REPO
script_directory=$phamer_directory"/scripts"
data_directory=$home"/Documents/research/phamer_data"
datasets_directory=$home"/Dropbox/Documents/research/phage_paper/datasets"
# Scripts (All relative to the PhaMers repository)
phage_taxonomy=$script_directory"/feature_taxonomy.py"
cross_validation=$script_directory"/cross_validate.py"
phamer=$script_directory"/phamer.py"
analysis=$script_directory"/analysis.py"
# Inputs
bijah_road_side4=$datasets_directory"/bijah_road_side4"
lower_geyser_basin=$datasets_directory"/lower_geyser_basin"
sulfolobus_or_acidianus=$datasets_directory"/sulfolobus_or_acidianus"
# Outputs
taxonomy_plots=$phamer_directory"/outputs/taxonomy"
cross_validation_out=$phamer_directory"/outputs/cross_validation"
# Dataset Specific Locations
if $run_lower_geyser_basin
then
input_directory=$lower_geyser_basin
elif $run_bijah_road_side4
then
input_directory=$bijah_road_side4
elif $run_sulfolobus_or_acidianus
then
input_directory=$sulfolobus_or_acidianus
fi
# Phage Taxonomy
if $do_taxonomy
then
echo "====== Phage Taxonomy ======"
all_phage=$data_directory"/all_phage_genomes.csv"
phage_features=$data_directory"/reference_features/positive_features.csv"
bacteria_features=$data_directory"/reference_features/bacteria_features.csv"
phage_lineages=$data_directory"/phage_lineages.txt"
phage_tsne_file=$phamer_directory"/outputs/taxonomy/tsne_data.csv"
$python $phage_taxonomy -fasta $all_phage -features $phage_features -lin $phage_lineages -tsne $phage_tsne_file -out $taxonomy_plots --debug --do_tsne
fi
# Cross Validation
if $do_cross_validation
then
echo "====== Cross Validation ======"
phage_features=$data_directory"/reference_features/filtered_features.csv"
bacteria_features=$data_directory"/reference_features/negative_features.csv"
cuts_directory=$data_directory"/cut_features/cut_4mer_counts"
phage_lineages=$data_directory"/phage_lineages.txt"
method="kmeans"
$python $cross_validation -pf $phage_features -nf $bacteria_features -out $cross_validation_out -N 20 --debug -l $phage_lineages --method $method
fi
# Phamer Scoring
if $do_phamer
then
echo "====== Phamer ======"
$python $phamer -in $input_directory --data_directory $data_directory --debug --equalize_reference --do_tsne
fi
# Analysis
if $do_analysis
then
echo "====== Analysis ======"
#$python $analysis -in $input_directory --data_directory $data_directory --debug --diagram_ids 5193
$python $analysis -in $input_directory --data_directory $data_directory --debug --diagram_ids 1
fi