Mercurial > repos > erinija > dnp_binary_strings
annotate dnp-subset-dinuc-profile.sh @ 0:611156829647 draft default tip
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
| author | erinija |
|---|---|
| date | Fri, 01 May 2020 12:07:46 +0000 |
| parents | |
| children |
| rev | line source |
|---|---|
|
0
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
1 #!/bin/sh |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
2 if test "$#" -ne 3; then |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
3 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
4 echo " CALL " |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
5 echo " sh subset_dinuc_profile.sh input.fasta dinucleotides output" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
6 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
7 echo " INPUT" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
8 echo " input.fasta - a batch of nucleosome (or any DNA) DNA sequences " |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
9 echo " dinucleotides - any subset of dinucleotides enclosed by quotes as 'AA AC AG AT CA CC' " |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
10 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
11 echo " OUTPUT" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
12 echo " output - file name to write the output in tabular format, columns have names as AA.f AA.r ..." |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
13 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
14 echo " DESCRIPTION" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
15 echo " Compute dinucleotide frequency profiles on forward and its complementary " |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
16 echo " sequences from a batch of fasta sequences. Output columns are labelled by AA.f, AA.r ... " |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
17 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
18 echo " Example of input fasta lines" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
19 echo " >chr9:42475963-42476182" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
20 echo " CCAGGCAGACCCCATATTCAAGCTGCTGCCCCAGGGTGGTGTACAGATCTGGGGAGAAGAAGGATGA" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
21 echo " >chr9:42476175-42476394" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
22 echo " TCTGCACTCCAGCATGCCTGAGGAGAGGAGGGAATGCAGGATCCTAGTGGAAAGAGTACCAAGCTGG" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
23 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
24 echo " Example of output table" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
25 echo " AA.f AA.r AC.f AC.r ..." |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
26 echo " 0.076000 0.059000 0.065000 0.078000 ..." |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
27 echo " 0.082000 0.060000 0.057000 0.076000 ..." |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
28 echo " 0.067000 0.075000 0.049000 0.071000 ..." |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
29 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
30 echo "" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
31 echo " REQUIREMENT" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
32 echo " dnp-diprofile installed" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
33 echo " conda install -c bioconda dnp-diprofile" |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
34 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
35 exit 0 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
36 fi |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
37 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
38 name=$1 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
39 diset=$2 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
40 out=$3 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
41 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
42 call=dnp-diprofile |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
43 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
44 ## the dinucleotide profiles are computed for the subset of dinucleotides listed in $diset |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
45 ## the profiles are outputs as columns of a table |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
46 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
47 # prepare fasta, we copy here because |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
48 # in galaxy we don't have fa ending which is required by the dinuc |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
49 cp ${name} ${name}.fa |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
50 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
51 # compute length of the fasta sequence |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
52 seq=`head -n2 $name | tail -n1` |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
53 len=${#seq} |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
54 #echo "Sequence length = " $len |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
55 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
56 |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
57 # for each dinucleotide compute the forward |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
58 # and complementary profile and save |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
59 # in separate columns that will be merged in the end |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
60 for di in ${diset} |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
61 do |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
62 #echo ${di} |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
63 echo ${di}.f > ${di}.f |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
64 ${call} ${name}.fa -di ${di} -sl ${len} >> ${di}.f |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
65 echo ${di}.r > ${di}.r |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
66 ${call} ${name}.fa -di ${di} -sl ${len} -c >> ${di}.r |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
67 echo ${di}.f >> names |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
68 echo ${di}.r >> names |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
69 done; |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
70 paste `cat names` > ${out} |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
71 rm names |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
72 rm ${name}.fa |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
73 rm *.f *.r |
|
611156829647
"planemo upload commit 1a32efb8343938e8d49190003f251c78b5a58225-dirty"
erinija
parents:
diff
changeset
|
74 exit 0 |
