-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathcreate_SLEM_named_list
executable file
·123 lines (117 loc) · 6.17 KB
/
create_SLEM_named_list
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
source $vini_dir/globals
SLEM_FILE=$WORKDIR/${CANCER_PATHWAY}_results/SLEM_values_${cell_line}_thl${therapy_level}_${exp}
> ${SLEM_FILE}_named
while read -r line
do
echo -n "."
SLEM=`echo $line | awk 'NF>1{print $NF}'` #Get SLEM value
word=`echo $line | awk '{print $1;}' | cut -c 6-` #Get SLEM indices
echo $word | tr '.' ' ' > tmp
word=`cat tmp`
case $therapy_level in
1) i=`echo $word | awk '{print $1}'` ;;
2) i=`echo $word | awk '{print $1}'`; j=`echo $word | awk '{print $2}'` ;;
3) i=`echo $word | awk '{print $1}'`; j=`echo $word | awk '{print $2}'`; k=`echo $word | awk '{print $3}'` ;;
4) i=`echo $word | awk '{print $1}'`; j=`echo $word | awk '{print $2}'`; k=`echo $word | awk '{print $3}'`; l=`echo $word | awk '{print $4}'` ;;
esac
if [[ $therapy_level == 1 ]]
then
dot_count=$(echo "$word" | tr -cd '.' | wc -c)
if [ ${dot_count} == $NULL ]
then
drug=`head -"$i" $vini_dir/ligands/ligands_list | tail -1` #get drug name
drug=`echo $drug | awk -F',' '{print $1}'`
word_count=$(echo "$drug" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug=$(echo "$drug" | sed 's/ /_/g') ; drug=${drug}
fi
printf "%s%s%s%s\n" "SLEM_" ${drug} " " $SLEM >> ${SLEM_FILE}_named
fi
else
if [[ $therapy_level == 2 ]]
then
word=`echo $line | awk '{print $1}'`
dot_count=$(echo "$word" | tr -cd '.' | wc -c)
if [ ${dot_count} == $ONES ]
then
drug1=`head -"$i" $vini_dir/ligands/ligands_list | tail -1` #convert "i" to name
drug1=`echo $drug1 | awk -F',' '{print $1}'`
word_count=$(echo "$drug1" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug1=$(echo "$drug1" | sed 's/ /_/g') ; drug1=${drug1}
fi
drug2=`head -"$j" $vini_dir/ligands/ligands_list | tail -1` #convert "j" to name
drug2=`echo $drug2 | awk -F',' '{print $1}'`
word_count=$(echo "$drug2" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug2=$(echo "$drug2" | sed 's/ /_/g') ; drug2=${drug2}
fi
printf "%s%s%s%s%s%s\n" "SLEM_" $drug1 "." $drug2 " " $SLEM >> ${SLEM_FILE}_named
fi
else
if [[ $therapy_level == 3 ]]
then
word=`echo $line | awk '{print $1}'`
dot_count=$(echo "$word" | tr -cd '.' | wc -c)
if [ ${dot_count} == $TWO ]
then
drug1=`head -"$i" $vini_dir/ligands/ligands_list | tail -1` #convert "i" to name
drug1=`echo $drug1 | awk -F',' '{print $1}'`
word_count=$(echo "$drug1" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug1=$(echo "$drug1" | sed 's/ /_/g') ; drug1=${drug1}
fi
drug2=`head -"$j" $vini_dir/ligands/ligands_list | tail -1` #convert "j" to name
drug2=`echo $drug2 | awk -F',' '{print $1}'`
word_count=$(echo "$drug2" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug2=$(echo "$drug2" | sed 's/ /_/g') ; drug2=${drug2}
fi
drug3=`head -"$k" $vini_dir/ligands/ligands_list | tail -1` #convert "k" to name
drug3=`echo $drug3 | awk -F',' '{print $1}'`
word_count=$(echo "$drug3" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug3=$(echo "$drug3" | sed 's/ /_/g') ; drug3=${drug3}
fi
printf "%s%s%s%s%s%s%s%s\n" "SLEM_" $drug1 "." $drug2 "." $drug3 " " $SLEM >> ${SLEM_FILE}_named
fi
else
if [[ $therapy_level == 4 ]]
then
word=`echo $line | awk '{print $1}'`
dot_count=$(echo "$word" | tr -cd '.' | wc -c)
if [ ${dot_count} == $THREE ]
then
drug1=`head -"$i" $vini_dir/ligands/ligands_list | tail -1` #convert "i"
drug1=`echo $drug1 | awk -F',' '{print $1}'`
word_count=$(echo "$drug1" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug1=$(echo "$drug1" | sed 's/ /_/g') ; drug1=${drug1}
fi
drug2=`head -"$j" $vini_dir/ligands/ligands_list | tail -1` #convert "j" to name
drug2=`echo $drug2 | awk -F',' '{print $1}'`
word_count=$(echo "$drug2" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug2=$(echo "$drug2" | sed 's/ /_/g') ; drug2=${drug2}
fi
drug3=`head -"$k" $vini_dir/ligands/ligands_list | tail -1` #convert "k" to name
drug3=`echo $drug3 | awk -F',' '{print $1}'`
word_count=$(echo "$drug3" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug3=$(echo "$drug3" | sed 's/ /_/g') ; drug3=${drug3}
fi
drug4=`head -"$l" $vini_dir/ligands/ligands_list | tail -1` #convert "l" to name
drug4=`echo $drug4 | awk -F',' '{print $1}'`
word_count=$(echo "$drug4" | wc -w)
if [ "$word_count" -eq 2 ] ;then
drug4=$(echo "$drug4" | sed 's/ /_/g') ; drug4=${drug4}
fi
printf "%s%s%s%s%s%s%s%s%s%s\n" "SLEM_" $drug1 "." $drug2 "." $drug3 "." $drug4 " " $SLEM >> ${SLEM_FILE}_named
fi
fi
fi
fi
fi
done < ${SLEM_FILE}_reduced
sort -k2 -n ${SLEM_FILE}_named > $WORKDIR/tmp #Sort and format the list
column -t $WORKDIR/tmp > ${SLEM_FILE}_named