-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path4_determine_alleles.sh
executable file
·44 lines (32 loc) · 1.23 KB
/
4_determine_alleles.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
#! /bin/bash
dir=$1
list=$(ls $dir | grep _alleles_comb.txt)
> all_results.txt
for i in $list; do
name=$(echo $i | sed 's/_alleles_comb.txt//')
echo $name
### create list of all genes
#grep -v " \* " $i | cut -f 2 | sed 's/*.*//' | sort | uniq -c > ${name}_genes.txt
#genes=$(grep -v " \* " $i | cut -f 2 | sed 's/*.*//' | sort | uniq)
genes=$(cut -f 2 $i | sed 's/*.*//' | sort | uniq | grep -v allel)
> ${name}_alleles_final.txt
> ${name}_final_result.txt
for g in $genes; do
echo >> ${name}_alleles_final.txt
echo $g | sed 's/"//g' | sed 's/*/./g' >> ${name}_alleles_final.txt
reads=$(grep "${g}\*" $i | cut -f 1)
#n=length($reads)
### get frequency drop
j=$(python /data/AbX/germline/GermAb/freq_drop.py $reads)
###
grep "${g}\*" $i | head -$j | cut -f 1,2,3 | sed 's/"//g' | sed 's/*/./g' >> ${name}_alleles_final.txt
grep "${g}\*" $i | head -$j | cut -f 2,3 | uniq | sed 's/"//g' | sed 's/*/./g' >> ${name}_final_result.txt
echo $name $g $j | sed 's/"//g' >> all_results.txt
#if [ $n > 1 ]
#then
echo -------------------- >> ${name}_alleles_final.txt
((j++))
grep "${g}\*" $i | tail -n +$j | cut -f 1,2,3 | sed 's/"//g' | sed 's/*/./g' >> ${name}_alleles_final.txt
#fi
done
done