Commit 46aa3884 authored by peguerin's avatar peguerin
Browse files

Initial commit

parents
# exclude everything
02-raw/*
03-samples/*
04-all_samples/*
05-stacks/*
06-populations/*
08-genomes/*
10-logs/*
# exception to the rule
!02-raw/.gitkeep
!03-samples/.gitkeep
!04-all_samples/.gitkeep
!05-stacks/.gitkeep
!06-populations/.gitkeep
!08-genomes/.gitkeep
!10-logs/.gitkeep
\ No newline at end of file
#!/bin/bash
# Global variables
GENOMEFOLDER="08-genomes"
##prefix of the genome files
GENOME=$1
##path of the folder which contains demultiplexed/"clonefiltered" samples
DATAFOLDER=$2
## number of available CPU cores (default : 64)
NCPU=$3
# Test if user specified a number of CPUs
if [[ -z "$NCPU" ]]
then
NCPU=64
fi
# temporary results from bwa mem command
temp_bwa=$$.temp_bwa
## Index genome if not alread done
#bwa index -p $GENOMEFOLDER/$GENOME $GENOMEFOLDER/$GENOME.fasta
for file in $(ls -1 $DATAFOLDER/*.1.fq.gz)
do
# Name of uncompressed file
file2=$(echo "$file" | sed 's/\.1\./.2./g')
echo "Aligning file $file $file2"
name=$(basename $file)
name2=$(basename $file2)
ID="@RG\tID:ind\tSM:ind\tPL:Illumina"
# Align reads 1 step
bwa mem -t "$NCPU" -R "$ID" $GENOMEFOLDER/$GENOME $DATAFOLDER/"$name" $DATAFOLDER/"$name2" 2> /dev/null > $temp_bwa
samtools view -Sb -q 20 $temp_bwa > $DATAFOLDER/"${name%.1.fq.gz}".bam
#samtools view -Sb -q 20 -f 83 -f 163 -f 99 -f 147 - > $DATAFOLDER/"${name%.fq.gz}".bam
# Sort and index
samtools sort $DATAFOLDER/"${name%.1.fq.gz}".bam -o $DATAFOLDER/"${name%.1.fq.gz}".sorted.bam
samtools index $DATAFOLDER/"${name%.1.fq.gz}".sorted.bam
rm $temp_bwa
done
## rename files
#argument 1 : path of the results 04-all_samples/species
#argument 2 : path of the infos files 01-info_files/species_infos.csv
mkdir $1
awk -F, '{ print $1"\t"$2"\t"$3"\t"$4}' $2 | while read NUMB RUN BARCODE NAME_IND ;
do
FOLDER_RUN=`ls $(pwd)/03-samples/$NUMB/ | grep $RUN | grep clone`
FILE_R1=`ls $(pwd)/03-samples/$NUMB/$FOLDER_RUN/ | grep $BARCODE | grep ".1.1."`
FILE_R2=`ls $(pwd)/03-samples/$NUMB/$FOLDER_RUN/ | grep $BARCODE | grep ".2.2."`
if [ -z "$FILE_R1" ]
then
echo "\$var is empty"
else
PATH_R1=$(pwd)/03-samples/$NUMB/$FOLDER_RUN/$FILE_R1
PATH_R2=$(pwd)/03-samples/$NUMB/$FOLDER_RUN/$FILE_R2
echo $PATH_R1 $PATH_R2
ln -s $PATH_R1 $1/$NAME_IND".1.fq.gz"
ln -s $PATH_R2 $1/$NAME_IND".2.fq.gz"
fi
done
configfile: "01-info_files/config.yaml"
RUNPOOLS, POOLS = glob_wildcards('02-raw/{runpool}/{pool}_R1_001.fastq.gz')
rule all:
input:
directory(expand('03-samples/{runpool}', runpool=RUNPOOLS)),
directory(expand('03-samples/{runpool}_clone_filtered', runpool=RUNPOOLS)),
expand('10-logs/process_radtags/{runpool}.log',runpool=RUNPOOLS),
expand('10-logs/clone_filter/{runpool}.log',runpool=RUNPOOLS)
### demultiplexing
rule process_radtags:
input:
'02-raw/{runpool}/'
output:
directory('03-samples/{runpool}')
params:
enzyme=config["process_radtags"]["enzyme"],
trim_length=config["process_radtags"]["trim_length"],
score_limit=config["process_radtags"]["score_limit"],
encoded=config["process_radtags"]["encoded"],
barcode_dist_1=config["process_radtags"]["barcode_dist_1"]
barcode_dist_2=config["process_radtags"]["barcode_dist_2"]
log:
'10-logs/process_radtags/{runpool}.log'
shell:
'''mkdir -p {output};
process_radtags -i gzfastq -P -p {input} -o {output} -b 01-info_files/barcodes.txt -c -r -t {params.trim_length} --barcode_dist_1 {params.barcode_dist_1} --barcode_dist_2 {params.barcode_dist_2} -s {params.score_limit} -E {params.encoded} -e {params.enzyme} 2> {log}'''
### clone filter
rule clone_filter:
input:
directory('03-samples/{runpool}')
output:
directory('03-samples/{runpool}_clone_filtered')
log:
'10-logs/clone_filter/{runpool}.log'
shell:
'''mkdir -p {output};
for p in `ls {input}/*fq.gz | grep -v *rem* | cut -d "." -f 1 | sort | uniq`;
do clone_filter -1 "$p".1.fq.gz -2 "$p".2.fq.gz -i gzfastq -o {output} 2> {log};
done'''
configfile: "01-info_files/config.yaml"
rule all:
input:
expand('08-genomes/{species}_genome.fasta',species=config["species"]),
expand('10-logs/index_genome/{species}.log',species=config["species"])
### index genome
rule index_genome:
input:
fasta='08-genomes/{species}_genome.fasta'
params:
'08-genomes/{species}_genome'
log:
'10-logs/index_genome/{species}.log'
shell:
'''bwa index -p {params} {input.fasta} 2> {log}'''
\ No newline at end of file
configfile: "01-info_files/config.yaml"
rule all:
input:
directory(expand('04-all_samples/{species}',species=config["species"])),
expand('01-info_files/{species}_infos.csv',species=config["species"]),
expand('10-logs/genome_alignment/{species}.log',species=config["species"])
### rename file
rule rename_file:
input:
infos='01-info_files/{species}_infos.csv'
output:
directory('04-all_samples/{species}')
shell:
'''bash ./00-scripts/rename_files.sh {output} {input.infos}'''
### genome alignment
rule genome_alignment:
input:
ancient(directory('04-all_samples/{species}'))
threads: config["genome_alignment"]["cores_bwa"]
params:
'{species}_genome'
output:
'10-logs/genome_alignment/{species}.log'
shell:
'''bash ./00-scripts/bwa_mem_align_reads_PE.sh {params} {input} {threads} 2> {output}'''
configfile: "01-info_files/config.yaml"
rule all:
input:
directory(expand('04-all_samples/{species}',species=config["species"])),
directory(expand('05-stacks/{species}',species=config["species"])),
expand('01-info_files/{species}_population_map.txt',species=config["species"]),
directory(expand('06-populations/{species}',species=config["species"])),
expand('10-logs/gstacks/{species}.log',species=config["species"]),
expand('10-logs/populations/{species}.log',species=config["species"])
if config["population_map"] != "n":
### population map
rule population_map:
input:
directory('04-all_samples/{species}')
output:
popMap='01-info_files/{species}_population_map.txt'
shell:
'''for i in `ls {input} | grep ".sorted.bam.bai"`;
do namef=`echo $i | cut -d "." -f 1-2`;
popID=`echo $i | cut -d "_" -f 2` ;
printf $namef"\t"$popID"\n";
done | sort | uniq > {output.popMap};
mkdir {output.stacksDir};'''
### gstacks
rule run_gstacks:
input:
sdir=directory('04-all_samples/{species}'),
popm='01-info_files/{species}_population_map.txt'
output:
directory('05-stacks/{species}')
threads: config["gstacks"]["cores"]
log:
'10-logs/gstacks/{species}.log'
shell:
'''mkdir -p {output};
gstacks -I {input.sdir} -t {threads} -M {input.popm} -O {output} > {log}'''
### populations
rule run_populations:
input:
gdir=directory('05-stacks/{species}'),
popm='01-info_files/{species}_population_map.txt'
output:
directory('06-populations/{species}')
threads: config["populations"]["cores"]
params:
r=config["populations"]["r"],
p=config["populations"]["p"],
f=config["populations"]["f"],
a=config["populations"]["a"],
p_value_cutoff=config["populations"]["p_value_cutoff"],
lnl_lim=config["populations"]["lnl_lim"]
log:
'10-logs/populations/{species}.log'
shell:
'''mkdir -p {output};
populations -t {threads} -P {input.gdir} -M {input.popm} -r {params.r} -p {params.p} -f {params.f} -a {params.a} --p_value_cutoff {params.p_value_cutoff} --lnl_lim {params.lnl_lim} --write_single_snp --vcf --vcf_haplotypes --structure -O {output} > {log}'''
AAACGG
AACGTT
AACTGA
AAGACG
AAGCTA
AATATC
AATGAG
ACAAGA
ACAGCG
ACATAC
ACCATG
ACCCCC
ACTCTT
ACTGGC
AGCCAT
AGCGCA
AGGGTC
AGGTGT
AGTAGG
AGTTAA
ATAGTA
ATCAAA
ATGCAC
ATGTTG
ATTCCG
CAAAAA
CAATCG
CACCTC
CAGGCA
CATACT
CCATTT
CCCGGT
CCCTAA
CCGAGG
CCGCAT
CCTAAC
CGAGGC
CGCAGA
CGCGTG
CGGTCC
CGTCTA
CGTGAT
CTACAG
CTCGCC
CTGCGA
CTGGTT
CTTATG
CTTTGC
process_radtags:
enzyme : SbfI
trim_length : 143
score_limit : 20
encoded : phred33
barcode_dist_1 : 2
barcode_dist_2 : 2
species:
- mullus
- serran
- diplodus
genome_alignment:
cores_bwa : 32
population_map: n
gstacks:
cores : 32
populations:
cores : 32
r : 0.85
p : 1
f : p_value
a : 0.05
p_value_cutoff : 0.10
lnl_lim : -10
2,H23244,AGCCAT,dip_spaAL_070
2,H23244,AGCGCA,dip_spaN_002
2,H23244,AGGGTC,dip_bal_077
2,H23244,AGGTGT,dip_spaS_078
2,H23244,AGTAGG,dip_spaS_036
2,H23244,AGTTAA,dip_fra_031
2,H23244,ATAGTA,dip_bal_054
2,H23244,ATCAAA,dip_fra_039
2,H23244,ATGCAC,dip_bal_113
2,H23244,ATGTTG,dip_spaN_019
2,H23244,ATTCCG,dip_spaAL_040
2,H23244,CAAAAA,dip_spaS_031
2,H23244,CAATCG,dip_bal_102
2,H23244,CACCTC,dip_spaS_079
2,H23244,CAGGCA,dip_spaAL_051
2,H23244,CATACT,dip_spaAL_049
2,H23244,CCATTT,dip_spaAL_024
2,H23244,CCCGGT,dip_fra_059
2,H23244,CCCTAA,dip_spaAL_079
2,H23244,CCGAGG,dip_fra_028
2,H23244,CCGCAT,dip_bal_071
2,H23244,CCTAAC,dip_bal_108
2,H23244,CGAGGC,dip_spaAL_067
2,H23244,CGCAGA,dip_spaS_093
2,H23244,CGCGTG,dip_spaAL_026
2,H23244,CGGTCC,dip_spaS_054
2,H23244,CGTCTA,dip_spaS_029
2,H23244,CGTGAT,dip_bal_031
2,H23244,CTACAG,dip_fra_036
2,H23244,CTCGCC,dip_spaS_114
2,H23244,CTGCGA,dip_spaAL_008
2,H23244,CTGGTT,dip_spaS_020
2,H23244,CTTATG,dip_spaN_080
2,H23244,CTTTGC,dip_fra_076
2,H23292,AAACGG,dip_bal_118
2,H23292,AACGTT,dip_spaAL_022
2,H23292,AACTGA,dip_spaS_102
2,H23292,AAGACG,dip_spaS_080
2,H23292,AAGCTA,dip_bal_120
2,H23292,AATATC,dip_bal_027
2,H23292,AATGAG,dip_spaS_043
2,H23292,ACAAGA,dip_fra_043
2,H23292,ACAGCG,dip_bal_014
2,H23292,ACATAC,dip_bal_107
2,H23292,ACCATG,dip_bal_105
2,H23292,ACCCCC,dip_bal_109
2,H23292,ACTCTT,dip_spaS_008
2,H23292,ACTGGC,dip_bal_067
2,H23292,AGCCAT,dip_spaAL_075
2,H23292,AGCGCA,dip_fra_094
2,H23292,AGGGTC,dip_bal_037
2,H23292,AGGTGT,dip_spaAL_069
2,H23292,AGTAGG,dip_spaN_001
2,H23292,AGTTAA,dip_fra_051
2,H23292,ATAGTA,dip_spaS_064
2,H23292,ATCAAA,dip_fra_005
2,H23292,ATGCAC,dip_fra_100
2,H23292,ATGTTG,dip_spaS_025
2,H23292,ATTCCG,dip_fra_023
2,H23292,CAAAAA,dip_fra_046
2,H23292,CAATCG,dip_spaAL_023
2,H23292,CACCTC,dip_spaAL_028
2,H23292,CAGGCA,dip_spaN_004
2,H23292,CATACT,dip_spaN_035
2,H23292,CCATTT,dip_bal_016
2,H23292,CCCGGT,dip_spaS_094
2,H23292,CCCTAA,dip_bal_003
2,H23292,CCGAGG,dip_spaS_013
2,H23292,CCGCAT,dip_spaAL_011
2,H23292,CCTAAC,dip_fra_056
2,H23292,CGAGGC,dip_spaN_012
2,H23292,CGCAGA,dip_bal_115
2,H23292,CGCGTG,dip_fra_095
2,H23292,CGGTCC,dip_bal_030
2,H23292,CGTCTA,dip_fra_049
2,H23292,CGTGAT,dip_bal_094
2,H23292,CTACAG,dip_bal_002
2,H23292,CTCGCC,dip_spaS_001
2,H23292,CTGCGA,dip_fra_061
2,H23292,CTGGTT,dip_spaS_111
2,H23292,CTTATG,dip_spaS_101
2,H23292,CTTTGC,dip_spaAL_020
2,H23340,AAACGG,dip_spaS_116
2,H23340,AACGTT,dip_spaN_072
2,H23340,AACTGA,dip_spaAL_068
2,H23340,AAGACG,dip_bal_029
2,H23340,AAGCTA,dip_bal_074
2,H23340,AATATC,dip_spaS_078
2,H23340,AATGAG,dip_fra_042
2,H23340,ACAAGA,dip_fra_070
2,H23340,ACAGCG,dip_fra_088
2,H23340,ACATAC,dip_fra_001
2,H23340,ACCATG,dip_spaAL_076
2,H23340,ACCCCC,dip_spaN_003
2,H23340,ACTCTT,dip_spaN_020
2,H23340,ACTGGC,dip_fra_011
2,H23340,AGCCAT,dip_spaS_110
2,H23340,AGCGCA,dip_fra_098
2,H23340,AGGGTC,dip_fra_044
2,H23340,AGGTGT,dip_fra_041
2,H23340,AGTAGG,dip_fra_060
2,H23340,AGTTAA,dip_bal_078
2,H23340,ATAGTA,dip_fra_082
2,H23340,ATCAAA,dip_bal_017
2,H23340,ATGCAC,dip_spaN_046
2,H23340,ATGTTG,dip_fra_062
2,H23340,ATTCCG,dip_fra_057
2,H23340,CAAAAA,dip_fra_089
2,H23340,CAATCG,dip_bal_103
2,H23340,CACCTC,dip_spaS_004
2,H23340,CAGGCA,dip_fra_037
2,H23340,CATACT,dip_fra_093
2,H23340,CCATTT,dip_spaAL_084
2,H23340,CCCGGT,dip_fra_090
2,H23340,CCCTAA,dip_bal_083
2,H23340,CCGAGG,dip_spaN_036
2,H23340,CCGCAT,dip_bal_019
2,H23340,CCTAAC,dip_spaS_050
2,H23340,CGAGGC,dip_fra_040
2,H23340,CGCAGA,dip_bal_082
2,H23340,CGCGTG,dip_bal_119
2,H23340,CGGTCC,dip_spaS_005
2,H23340,CGTCTA,dip_bal_050
2,H23340,CGTGAT,dip_spaN_057
2,H23340,CTACAG,dip_fra_087
2,H23340,CTCGCC,dip_bal_089
2,H23340,CTGCGA,dip_fra_021
2,H23340,CTGGTT,dip_bal_072
2,H23340,CTTATG,dip_bal_095
2,H23340,CTTTGC,dip_spaAL_035
2,H23388,AAACGG,dip_fra_066
2,H23388,AACGTT,dip_spaS_096
2,H23388,AACTGA,dip_bal_025
2,H23388,AAGACG,dip_spaS_012
2,H23388,AAGCTA,dip_fra_084
2,H23388,AATATC,dip_bal_091
2,H23388,AATGAG,dip_fra_096
2,H23388,ACAAGA,dip_fra_009
2,H23388,ACAGCG,dip_fra_022
2,H23388,ACATAC,dip_bal_001
2,H23388,ACCATG,dip_spaAL_042
2,H23388,ACCCCC,dip_spaS_023
2,H23388,ACTCTT,dip_fra_047
2,H23388,ACTGGC,dip_spaS_112
2,H23388,AGCCAT,dip_bal_060
2,H23388,AGCGCA,dip_fra_071
2,H23388,AGGGTC,dip_spaS_097
2,H23388,AGGTGT,dip_fra_079
2,H23388,AGTAGG,dip_bal_079
2,H23388,AGTTAA,dip_spaAL_047
2,H23388,ATAGTA,dip_fra_050
2,H23388,ATCAAA,dip_spaAL_057
2,H23388,ATGCAC,dip_fra_058
2,H23388,ATGTTG,dip_fra_052
2,H23388,ATTCCG,dip_fra_077
2,H23388,CAAAAA,dip_fra_034
2,H23388,CAATCG,dip_bal_020
2,H23388,CACCTC,dip_fra_068
2,H23388,CAGGCA,dip_bal_110
2,H23388,CATACT,dip_spaS_081
2,H23388,CCATTT,dip_fra_078
2,H23388,CCCGGT,dip_fra_081
2,H23388,CCCTAA,dip_fra_054
2,H23388,CCGAGG,dip_bal_116
2,H23388,CCGCAT,dip_spaN_071
2,H23388,CCTAAC,dip_fra_080
2,H23388,CGAGGC,dip_spaS_119
2,H23388,CGCAGA,dip_spaN_016
2,H23388,CGCGTG,dip_bal_062
2,H23388,CGGTCC,dip_spaS_069
2,H23388,CGTCTA,dip_spaAL_077
2,H23388,CGTGAT,dip_spaS_070
2,H23388,CTACAG,dip_spaAL_063
2,H23388,CTCGCC,dip_spaS_117
2,H23388,CTGCGA,dip_fra_063
2,H23388,CTGGTT,dip_bal_005
2,H23388,CTTATG,dip_bal_080
2,H23388,CTTTGC,dip_fra_045
2,H23436,AAACGG,dip_fra_099
2,H23436,AACGTT,dip_bal_065
2,H23436,AACTGA,dip_bal_114
2,H23436,AAGACG,dip_spaN_006
2,H23436,AAGCTA,dip_bal_096
2,H23436,AATATC,dip_bal_056
2,H23436,AATGAG,dip_bal_024
2,H23436,ACAAGA,dip_spaAL_066
2,H23436,ACAGCG,dip_fra_035
2,H23436,ACATAC,dip_fra_007
2,H23436,ACCATG,dip_spaN_010
2,H23436,ACCCCC,dip_bal_048
2,H23436,ACTCTT,dip_spaN_062
2,H23436,ACTGGC,dip_bal_022
2,H23436,AGCCAT,dip_spaN_009
2,H23436,AGCGCA,dip_spaN_008
2,H23436,AGGGTC,dip_fra_091
2,H23436,AGGTGT,dip_spaS_018
2,H23436,AGTAGG,dip_bal_112
2,H23436,AGTTAA,dip_spaN_011
2,H23436,ATAGTA,dip_bal_010
2,H23436,ATCAAA,dip_spaAL_062
2,H23436,ATGCAC,dip_fra_072
2,H23436,ATGTTG,dip_spaAL_037
2,H23436,ATTCCG,dip_fra_053
2,H23436,CAAAAA,dip_spaAL_081
2,H23436,CAATCG,dip_bal_101
2,H23436,CACCTC,dip_spaS_059
2,H23436,CAGGCA,dip_bal_099
2,H23436,CATACT,dip_spaS_030
2,H23436,CCATTT,dip_spaN_017
2,H23436,CCCGGT,dip_bal_013
2,H23436,CCCTAA,dip_fra_029
2,H23436,CCGAGG,dip_spaS_113
2,H23436,CCGCAT,dip_spaS_037
2,H23436,CCTAAC,dip_spaS_011
2,H23436,CGAGGC,dip_fra_048
2,H23436,CGCAGA,dip_spaS_053
2,H23436,CGCGTG,dip_spaAL_060
2,H23436,CGGTCC,dip_fra_085
2,H23436,CGTCTA,dip_fra_024
2,H23436,CGTGAT,dip_fra_073
2,H23436,CTACAG,dip_spaAL_015
2,H23436,CTCGCC,dip_fra_038
2,H23436,CTGCGA,dip_bal_061
2,H23436,CTGGTT,dip_spaAL_044
2,H23436,CTTATG,dip_bal_009
2,H23436,CTTTGC,dip_spaS_060
2,H23484,AAACGG,dip_fra_083
2,H23484,AACGTT,dip_spaAL_058
2,H23484,AACTGA,dip_bal_018
2,H23484,AAGACG,dip_fra_032
2,H23484,AAGCTA,dip_bal_100
2,H23484,AATATC,dip_bal_053
2,H23484,AATGAG,dip_bal_097
2,H23484,ACAAGA,dip_bal_006
2,H23484,ACAGCG,dip_bal_084
2,H23484,ACATAC,dip_spaS_118
2,H23484,ACCATG,dip_bal_111
2,H23484,ACCCCC,dip_bal_004
2,H23484,ACTCTT,dip_bal_028
2,H23484,ACTGGC,dip_fra_033
2,H23484,AGCCAT,dip_spaAL_074
2,H23484,AGCGCA,dip_spaAL_031
2,H23484,AGGGTC,dip_spaAL_064
2,H23484,AGGTGT,dip_fra_026
2,H23484,AGTAGG,dip_spaS_095
2,H23484,AGTTAA,dip_spaAL_006
2,H23484,ATAGTA,dip_fra_002
2,H23484,ATCAAA,dip_spaN_015
2,H23484,ATGCAC,dip_spaS_045
2,H23484,ATGTTG,dip_bal_015
2,H23484,ATTCCG,dip_spaAL_061
2,H23484,CAAAAA,dip_fra_030
2,H23484,CAATCG,dip_bal_021
2,H23484,CACCTC,dip_spaAL_083
2,H23484,CAGGCA,dip_spaS_115
2,H23484,CATACT,dip_spaN_047
2,H23484,CCATTT,dip_spaAL_078
2,H23484,CCCGGT,dip_spaS_035
2,H23484,CCCTAA,dip_spaS_082
2,H23484,CCGAGG,dip_fra_065
2,H23484,CCGCAT,dip_spaN_021
2,H23484,CCTAAC,dip_bal_081
2,H23484,CGAGGC,dip_spaAL_003
2,H23484,CGCAGA,dip_bal_073
2,H23484,CGCGTG,dip_fra_014
2,H23484,CGGTCC,dip_spaAL_065
2,H23484,CGTCTA,dip_spaS_100
2,H23484,CGTGAT,dip_bal_012
2,H23484,CTACAG,dip_bal_045
2,H23484,CTCGCC,dip_bal_085
2,H23484,CTGCGA,dip_fra_097
2,H23484,CTGGTT,dip_fra_025
2,H23484,CTTATG,dip_fra_012
2,H23484,CTTTGC,dip_spaAL_059
2,H23532,AAACGG,dip_fra_069
2,H23532,AACGTT,dip_spaN_013
2,H23532,AACTGA,dip_spaN_005
2,H23532,AAGACG,dip_spaS_027
2,H23532,AAGCTA,dip_fra_055
2,H23532,AATATC,dip_bal_117
2,H23532,AATGAG,dip_bal_086
2,H23532,ACAAGA,dip_spaAL_016
2,H23532,ACAGCG,dip_spaS_041
2,H23532,ACATAC,dip_spaN_014
2,H23532,ACCATG,dip_bal_063
2,H23532,ACCCCC,dip_bal_098
2,H23532,ACTCTT,dip_fra_003
2,H23532,ACTGGC,dip_spaS_068
2,H23532,AGCCAT,dip_fra_064
2,H23532,AGCGCA,dip_spaAL_055
2,H23532,AGGGTC,dip_bal_026
2,H23532,AGGTGT,dip_spaN_054
2,H23532,AGTAGG,dip_spaN_007
2,H23532,AGTTAA,dip_bal_007
2,H23532,ATAGTA,dip_bal_011
2,H23532,ATCAAA,dip_bal_023
2,H23532,ATGCAC,dip_bal_087
2,H23532,ATGTTG,dip_fra_086
2,H23532,ATTCCG,dip_fra_027
dip_bal_001.sorted bal
dip_bal_002.sorted bal
dip_bal_003.sorted bal
dip_bal_004.sorted bal
dip_bal_005.sorted bal
dip_bal_006.sorted bal
dip_bal_007.sorted bal
dip_bal_009.sorted bal
dip_bal_010.sorted bal
dip_bal_011.sorted bal
dip_bal_012.sorted bal
dip_bal_013.sorted bal
dip_bal_014.sorted bal
dip_bal_015.sorted bal
dip_bal_016.sorted bal
dip_bal_017.sorted bal
dip_bal_018.sorted bal
dip_bal_019.sorted bal
dip_bal_020.sorted bal
dip_bal_021.sorted bal
dip_bal_022.sorted bal
dip_bal_023.sorted bal
dip_bal_024.sorted bal