| Previous changeset 22:2555b94dbdb2 (2015-01-15) Next changeset 24:5454af6fece1 (2015-01-23) |
|
Commit message:
Uploaded |
|
modified:
RScript.r r_wrapper.sh report_clonality_igg.xml |
| b |
| diff -r 2555b94dbdb2 -r 5f0597a3fd8b RScript.r --- a/RScript.r Thu Jan 15 09:16:19 2015 -0500 +++ b/RScript.r Fri Jan 16 07:37:41 2015 -0500 |
| [ |
| @@ -166,23 +166,50 @@ PRODFJ = merge(PRODFJ, Total, by.x='Sample', by.y='Sample', all.x=TRUE) PRODFJ = ddply(PRODFJ, c("Sample", "Top.J.Gene"), summarise, relFreq= (Length*100 / Total)) -# ---------------------- Setting up the gene names for the different T/B, human/mouse and locus ---------------------- +# ---------------------- Setting up the gene names for the different species/loci ---------------------- -genes = read.table("genes.txt", sep="\t", header=TRUE, fill=T, comment.char="") +Vchain = "" +Dchain = "" +Jchain = "" -Vchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "V",c("IMGT.GENE.DB", "chr.order")] -colnames(Vchain) = c("v.name", "chr.orderV") -Dchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "D",c("IMGT.GENE.DB", "chr.order")] -colnames(Dchain) = c("v.name", "chr.orderD") -Jchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "J",c("IMGT.GENE.DB", "chr.order")] -colnames(Jchain) = c("v.name", "chr.orderJ") +if(species == "custom"){ + print("Custom genes: ") + splt = unlist(strsplit(locus, ";")) + print(paste("V:", splt[1])) + print(paste("D:", splt[2])) + print(paste("J:", splt[3])) + + Vchain = unlist(strsplit(splt[1], ",")) + Vchain = data.frame(v.name = Vchain, chr.orderV = 1:length(Vchain)) + + Dchain = unlist(strsplit(splt[2], ",")) + if(length(Dchain) > 0){ + Dchain = data.frame(v.name = Dchain, chr.orderD = 1:length(Dchain)) + } else { + Dchain = data.frame(v.name = character(0), chr.orderD = numeric(0)) + } + + Jchain = unlist(strsplit(splt[3], ",")) + Jchain = data.frame(v.name = Jchain, chr.orderJ = 1:length(Jchain)) +} else { + genes = read.table("genes.txt", sep="\t", header=TRUE, fill=T, comment.char="") + + Vchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "V",c("IMGT.GENE.DB", "chr.order")] + colnames(Vchain) = c("v.name", "chr.orderV") + Dchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "D",c("IMGT.GENE.DB", "chr.order")] + colnames(Dchain) = c("v.name", "chr.orderD") + Jchain = genes[grepl(species, genes$Species) & genes$locus == locus & genes$region == "J",c("IMGT.GENE.DB", "chr.order")] + colnames(Jchain) = c("v.name", "chr.orderJ") +} useD = TRUE if(nrow(Dchain) == 0){ useD = FALSE cat("No D Genes in this species/locus") } +print(paste("useD:", useD)) + # ---------------------- merge with the frequency count ---------------------- PRODFV = merge(PRODFV, Vchain, by.x='Top.V.Gene', by.y='v.name', all.x=TRUE) |
| b |
| diff -r 2555b94dbdb2 -r 5f0597a3fd8b r_wrapper.sh --- a/r_wrapper.sh Thu Jan 15 09:16:19 2015 -0500 +++ b/r_wrapper.sh Fri Jan 16 07:37:41 2015 -0500 |
| [ |
| @@ -10,8 +10,18 @@ dir="$(cd "$(dirname "$0")" && pwd)" useD="false" if grep -q "$species.*${locus}D" "$dir/genes.txt" ; then + echo "species D region in reference db" useD="true" fi +echo "$species" +if [[ "$species" == *"custom"* ]] ; then + loci=(${locus//;/ }) + useD="true" + echo "${loci[@]}" + if [[ "${#loci[@]}" -eq "2" ]] ; then + useD="false" + fi +fi mkdir $3 cp $dir/genes.txt $outputDir Rscript --verbose $dir/RScript.r $inputFile $outputDir $outputDir $clonalType "$species" "$locus" $filterproductive 2>&1 |
| b |
| diff -r 2555b94dbdb2 -r 5f0597a3fd8b report_clonality_igg.xml --- a/report_clonality_igg.xml Thu Jan 15 09:16:19 2015 -0500 +++ b/report_clonality_igg.xml Fri Jan 16 07:37:41 2015 -0500 |
| b |
| b'@@ -1,7 +1,11 @@\n <tool id="report_clonality_igg" name="Report Clonality" version="1.0">\n \t<description> </description>\n \t<command interpreter="bash">\n-\t\tr_wrapper.sh $in_file $out_file $out_file.files_path "$clonaltype" "$species" "$locus" $filterproductive\n+#if $gene_selection.source == "imgtdb"\t\t\n+\tr_wrapper.sh $in_file $out_file $out_file.files_path "$clonaltype" "${gene_selection.species}" "${gene_selection.locus}" $filterproductive\n+#else\n+\tr_wrapper.sh $in_file $out_file $out_file.files_path "$clonaltype" "custom" "${gene_selection.vgenes};${gene_selection.dgenes};${gene_selection.jgenes}" $filterproductive\n+#end if\n \t</command>\n \t<inputs>\n \t\t<param name="in_file" format="tabular" type="data" label="Data to Process" />\n@@ -14,73 +18,147 @@\n \t\t\t<option value="Top.V.Gene,Top.D.Gene,Top.J.Gene,CDR3.Seq.DNA">Top.V.Gene, Top.D.Gene, Top.J.Gene, CDR3.Seq.DNA</option>\n \t\t</param>\n \t\t\n-\t\t<param name="species" type="select" label="Species">\n-\t\t\t<option value="Bos taurus">Bos taurus</option>\n-\t\t\t<option value="Bos taurus functional">Bos taurus functional</option>\n-\t\t\t<option value="Bos taurus non-functional">Bos taurus non-functional</option>\n-\t\t\t<option value="Camelus dromedarius">Camelus dromedarius</option>\n-\t\t\t<option value="Camelus dromedarius functional">Camelus dromedarius functional</option>\n-\t\t\t<option value="Camelus dromedarius non-functional">Camelus dromedarius non-functional</option>\n-\t\t\t<option value="Canis lupus familiaris">Canis lupus familiaris</option>\n-\t\t\t<option value="Canis lupus familiaris functional">Canis lupus familiaris functional</option>\n-\t\t\t<option value="Canis lupus familiaris non-functional">Canis lupus familiaris non-functional</option>\n-\t\t\t<option value="Danio rerio">Danio rerio</option>\n-\t\t\t<option value="Danio rerio functional">Danio rerio functional</option>\n-\t\t\t<option value="Danio rerio non-functional">Danio rerio non-functional</option>\n-\t\t\t<option value="Homo sapiens">Homo sapiens</option>\n-\t\t\t<option value="Homo sapiens functional">Homo sapiens functional</option>\n-\t\t\t<option value="Homo sapiens non-functional">Homo sapiens non-functional</option>\n-\t\t\t<option value="Macaca mulatta">Macaca mulatta</option>\n-\t\t\t<option value="Macaca mulatta functional">Macaca mulatta functional</option>\n-\t\t\t<option value="Macaca mulatta non-functional">Macaca mulatta non-functional</option>\n-\t\t\t<option value="Mus musculus">Mus musculus</option>\n-\t\t\t<option value="Mus musculus functional">Mus musculus functional</option>\n-\t\t\t<option value="Mus musculus non-functional">Mus musculus non-functional</option>\n-\t\t\t<option value="Mus spretus">Mus spretus</option>\n-\t\t\t<option value="Mus spretus functional">Mus spretus functional</option>\n-\t\t\t<option value="Mus spretus non-functional">Mus spretus non-functional</option>\n-\t\t\t<option value="Oncorhynchus mykiss">Oncorhynchus mykiss</option>\n-\t\t\t<option value="Oncorhynchus mykiss functional">Oncorhynchus mykiss functional</option>\n-\t\t\t<option value="Oncorhynchus mykiss non-functional">Oncorhynchus mykiss non-functional</option>\n-\t\t\t<option value="Ornithorhynchus anatinus">Ornithorhynchus anatinus</option>\n-\t\t\t<option value="Ornithorhynchus anatinus functional">Ornithorhynchus anatinus functional</option>\n-\t\t\t<option value="Ornithorhynchus anatinus non-functional">Ornithorhynchus anatinus non-functional</option>\n-\t\t\t<option value="Oryctolagus cuniculus">Oryctolagus cuniculus</option>\n-\t\t\t<option value="Oryctolagus cuniculus functional">Oryctolagus cuniculus functional</option>\n-\t\t\t<option value="Oryctolagus cuniculus non-functional">Oryctolagus cuniculus non-functional</option>\n-\t\t\t<option value="Rattus norvegicus">Rattus norvegicus</option>\n-\t\t\t<option value="Rattus norvegicus functional">Rattus norvegicus functional</option>\n-\t\t\t<option value="Rattus norvegicus non-functional">Rattus norvegicus non-functional</option>\n-\t\t\t<option value="Sus scrofa">Sus scrofa</option>\n-\t\t\t<option value="Sus scrofa functional">Sus scrofa functional</option>\n-\t\t\t<option value="Sus scrofa '..b'param name="dgenes" type="text" label="D Genes" size="100" />\n+\t\t\t\t<param name="jgenes" type="text" label="J Genes" size="100" />\n+\t\t\t</when>\n+\t\t</conditional>\n \t\t\n \t\t<param name="filterproductive" type="select" label="Filter out the unproductive sequences">\n \t\t\t<option value="yes">Yes</option>\n \t\t\t<option value="no">No</option>\n \t\t</param>\n-\n \t</inputs>\n \t<outputs>\n \t\t<data format="html" name="out_file" />\n \t</outputs>\n-\t<help>\n+\t<help>\t\t\n **INPUT**\n \n One or more ARGalaxy proprietary format files combined with the ARGalaxy Experimental Design tool\n \n+\n+.. class:: warningmark\n+\n+Custom gene ordering based on position on genome: \n+\n+**Human**\n+\n+IGH::\n+\n+ V:IGHV3-74,IGHV3-73,IGHV3-72,IGHV2-70,IGHV1-69D,IGHV1-69-2,IGHV2-70D,IGHV1-69,IGHV3-66,IGHV3-64,IGHV4-61,IGHV4-59,IGHV1-58,IGHV3-53,IGHV5-51,IGHV3-49,IGHV3-48,IGHV1-46,IGHV1-45,IGHV3-43,IGHV4-39,IGHV3-43D,IGHV4-38-2,IGHV4-34,IGHV3-33,IGHV4-31,IGHV3-30-5,IGHV4-30-4,IGHV3-30-3,IGHV4-30-2,IGHV4-30-1,IGHV3-30,IGHV4-28,IGHV2-26,IGHV1-24,IGHV3-23D,IGHV3-23,IGHV3-21,IGHV3-20,IGHV1-18,IGHV3-15,IGHV3-13,IGHV3-11,IGHV5-10-1,IGHV3-9,IGHV1-8,IGHV3-64D,IGHV3-7,IGHV2-5,IGHV7-4-1,IGHV4-4,IGHV1-3,IGHV1-2,IGHV6-1\n+ D:IGHD1-1,IGHD2-2,IGHD3-3,IGHD4-4,IGHD5-5,IGHD6-6,IGHD1-7,IGHD2-8,IGHD3-9,IGHD3-10,IGHD5-12,IGHD6-13,IGHD2-15,IGHD3-16,IGHD4-17,IGHD5-18,IGHD6-19,IGHD1-20,IGHD2-21,IGHD3-22,IGHD5-24,IGHD6-25,IGHD1-26,IGHD7-27\n+ J:IGHJ1,IGHJ2,IGHJ3,IGHJ4,IGHJ5,IGHJ6\n+\n+\n+IGK::\n+\n+ V:IGKV3D-7,IGKV1D-8,IGKV1D-43,IGKV3D-11,IGKV1D-12,IGKV1D-13,IGKV3D-15,IGKV1D-16,IGKV1D-17,IGKV3D-20,IGKV2D-26,IGKV2D-28,IGKV2D-29,IGKV2D-30,IGKV1D-33,IGKV1D-39,IGKV2D-40,IGKV2-40,IGKV1-39,IGKV1-33,IGKV2-30,IGKV2-29,IGKV2-28,IGKV1-27,IGKV2-24,IGKV3-20,IGKV1-17,IGKV1-16,IGKV3-15,IGKV1-13,IGKV1-12,IGKV3-11,IGKV1-9,IGKV1-8,IGKV1-6,IGKV1-5,IGKV5-2,IGKV4-1\n+ J:IGKJ1,IGKJ2,IGKJ3,IGKJ4,IGKJ5\n+\n+\n+IGL::\n+\n+ V:IGLV4-69,IGLV8-61,IGLV4-60,IGLV6-57,IGLV5-52,IGLV1-51,IGLV9-49,IGLV1-47,IGLV7-46,IGLV5-45,IGLV1-44,IGLV7-43,IGLV1-41,IGLV1-40,IGLV5-39,IGLV5-37,IGLV1-36,IGLV3-27,IGLV3-25,IGLV2-23,IGLV3-22,IGLV3-21,IGLV3-19,IGLV2-18,IGLV3-16,IGLV2-14,IGLV3-12,IGLV2-11,IGLV3-10,IGLV3-9,IGLV2-8,IGLV4-3,IGLV3-1\n+ J:IGLJ1,IGLJ2,IGLJ3,IGLJ6,IGLJ7\n+\n+\n+TRB::\n+\n+ V:TRBV2,TRBV3-1,TRBV4-1,TRBV5-1,TRBV6-1,TRBV4-2,TRBV6-2,TRBV4-3,TRBV6-3,TRBV7-2,TRBV6-4,TRBV7-3,TRBV9,TRBV10-1,TRBV11-1,TRBV10-2,TRBV11-2,TRBV6-5,TRBV7-4,TRBV5-4,TRBV6-6,TRBV5-5,TRBV7-6,TRBV5-6,TRBV6-8,TRBV7-7,TRBV6-9,TRBV7-8,TRBV5-8,TRBV7-9,TRBV13,TRBV10-3,TRBV11-3,TRBV12-3,TRBV12-4,TRBV12-5,TRBV14,TRBV15,TRBV16,TRBV18,TRBV19,TRBV20-1,TRBV24-1,TRBV25-1,TRBV27,TRBV28,TRBV29-1,TRBV30\n+ D:TRBD1,TRBD2\n+ J:TRBJ1-1,TRBJ1-2,TRBJ1-3,TRBJ1-4,TRBJ1-5,TRBJ1-6,TRBJ2-1,TRBJ2-2,TRBJ2-3,TRBJ2-4,TRBJ2-5,TRBJ2-6,TRBJ2-7\n+\n+\n+TRA::\n+\n+ V:TRAV1-1,TRAV1-2,TRAV2,TRAV3,TRAV4,TRAV5,TRAV6,TRAV7,TRAV8-1,TRAV9-1,TRAV10,TRAV12-1,TRAV8-2,TRAV8-3,TRAV13-1,TRAV12-2,TRAV8-4,TRAV13-2,TRAV14/DV4,TRAV9-2,TRAV12-3,TRAV8-6,TRAV16,TRAV17,TRAV18,TRAV19,TRAV20,TRAV21,TRAV22,TRAV23/DV6,TRAV24,TRAV25,TRAV26-1,TRAV27,TRAV29/DV5,TRAV30,TRAV26-2,TRAV34,TRAV35,TRAV36/DV7,TRAV38-1,TRAV38-2/DV8,TRAV39,TRAV40,TRAV41\n+ J:TRAJ57,TRAJ56,TRAJ54,TRAJ53,TRAJ52,TRAJ50,TRAJ49,TRAJ48,TRAJ47,TRAJ46,TRAJ45,TRAJ44,TRAJ43,TRAJ42,TRAJ41,TRAJ40,TRAJ39,TRAJ38,TRAJ37,TRAJ36,TRAJ34,TRAJ33,TRAJ32,TRAJ31,TRAJ30,TRAJ29,TRAJ28,TRAJ27,TRAJ26,TRAJ24,TRAJ23,TRAJ22,TRAJ21,TRAJ20,TRAJ18,TRAJ17,TRAJ16,TRAJ15,TRAJ14,TRAJ13,TRAJ12,TRAJ11,TRAJ10,TRAJ9,TRAJ8,TRAJ7,TRAJ6,TRAJ5,TRAJ4,TRAJ3\n+\n+\n+TRG::\n+\n+ V:TRGV9,TRGV8,TRGV5,TRGV4,TRGV3,TRGV2\n+ J:TRGJ2,TRGJP2,TRGJ1,TRGJP1\n+\n+\n+TRD::\n+\n+ V:TRDV1,TRDV2,TRDV3\n+ D:TRDD1,TRDD2,TRDD3\n+ J:TRDJ1,TRDJ4,TRDJ2,TRDJ3\n+\n+\n+**Mouse**\n+\n+TRB::\n+\n+ V:TRBV1,TRBV2,TRBV3,TRBV4,TRBV5,TRBV12-1,TRBV13-1,TRBV12-2,TRBV13-2,TRBV13-3,TRBV14,TRBV15,TRBV16,TRBV17,TRBV19,TRBV20,TRBV23,TRBV24,TRBV26,TRBV29,TRBV30,TRBV31\n+ D:TRBD1,TRBD2\n+ J:TRBJ1-1,TRBJ1-2,TRBJ1-3,TRBJ1-4,TRBJ1-5,TRBJ2-1,TRBJ2-2,TRBJ2-3,TRBJ2-4,TRBJ2-5,TRBJ2-6,TRBJ2-7\n+ \n+\n **OUTPUT**\n \n It generates the following result:\n' |