SNP_ID2EntrezGene_ID
Created: 2012-06-26 09:50:25
Last updated: 2013-03-11 13:56:56
Purpose:
The workflow maps a SNP (dbSNP id) to a gene (EntrezGene id).
Author comments:
The window for gene inclusion can be set using the set_width parameter. This workflow can be used together with other workflows in this pack: http://www.myexperiment.org/packs/282 for functional gene and SNP annotation and knowledge discovery.
Preview
Run
Run this Workflow in the Taverna Workbench...
Workflow Components
Authors (1)
Author:
Harish Dharuri
Contributor:
Kristina Hettne |
Titles (1)
Descriptions (1)
Purpose:
The workflow maps a SNP (dbSNP id) to a gene (EntrezGene id).
Author comments:
The window for gene inclusion can be set using the set_width parameter. This workflow can be used together with other workflows in this pack: http://www.myexperiment.org/packs/282 for functional gene and SNP annotation and knowledge discovery. |
Dependencies (0)
Inputs (2)
Name |
Description |
SNP_ID |
Use (a list of) Database of Single Nucleotide Polymorphisms (dbSNP) IDs as input, separated by the newline character (\n).
|
set_width |
The allows the user to set the flanking width for the gene for determining SNPs.
|
Processors (8)
Name |
Type |
Description |
extract_snp_id |
beanshell |
This extracts the contents (snp_ids) from the input. Scriptimport java.util.*;
String [] line = string.split("\t");
out1=line[0].trim(); |
Split_string_into_string_list_by_regular_expression |
localworker |
This service splits the string value into a string list at every occurrence of the specified regular expression. The regular expression provided in this case is a new line: "\n" ScriptList split = new ArrayList();
if (!string.equals("")) {
String regexString = ",";
if (regex != void) {
regexString = regex;
}
String[] result = string.split(regexString);
for (int i = 0; i < result.length; i++) {
split.add(result[i]);
}
}
|
regex_value |
stringconstant |
Value\n |
hsapiens_snp |
biomart |
This is a Biomart service that takes the SNP ID as the input and returns chromosome name, and the position of the SNP. |
Flatten_List |
localworker |
This service flattens the inputlist by one level. It returns the result of the flattening. Scriptflatten(inputs, outputs, depth) {
for (i = inputs.iterator(); i.hasNext();) {
element = i.next();
if (element instanceof Collection && depth > 0) {
flatten(element, outputs, depth - 1);
} else {
outputs.add(element);
}
}
}
outputlist = new ArrayList();
flatten(inputlist, outputlist, 1); |
Flatten_List_2 |
localworker |
This service flattens the inputlist by one level. It returns the result of the flattening. Scriptflatten(inputs, outputs, depth) {
for (i = inputs.iterator(); i.hasNext();) {
element = i.next();
if (element instanceof Collection && depth > 0) {
flatten(element, outputs, depth - 1);
} else {
outputs.add(element);
}
}
}
outputlist = new ArrayList();
flatten(inputlist, outputlist, 1); |
input_chr_position |
beanshell |
The purpose of this beanshell is to manipulate the start and end positions based on the flanking width provided by the user. Scriptimport java.util.*;
List tmp_end = new ArrayList();
List tmp_start = new ArrayList();
width =Integer.parseInt(in1.get(0));
int out_end=0;
int out_start=0;
for(int i=0; i < in2.size(); i++) {
value_pos = Integer.parseInt(in2.get(i));
out_end = value_pos + width;
out_start = value_pos - width;
tmp_end.add(out_end);
tmp_start.add(out_start);
}
end_out = tmp_end;
start_out = tmp_start;
chr_out = chr_in;
|
hsapiens_gene_ensembl |
biomart |
This is a Biomart service that takes the chromosome name and start and end positions and returns genes (entrez gene id) present in the region. |
Beanshells (2)
Name |
Description |
Inputs |
Outputs |
extract_snp_id |
This extracts the contents (snp_ids) from the input. |
string
|
out1
|
input_chr_position |
The purpose of this beanshell is to manipulate the start and end positions based on the flanking width provided by the user. |
chr_in
in2
in1
|
chr_out
end_out
start_out
|
Outputs (1)
Name |
Description |
EntrezGene_ID |
A list of EntrezGene IDs.
|
Datalinks (13)
Source |
Sink |
Split_string_into_string_list_by_regular_expression:split |
extract_snp_id:string |
regex_value:value |
Split_string_into_string_list_by_regular_expression:regex |
SNP_ID |
Split_string_into_string_list_by_regular_expression:string |
extract_snp_id:out1 |
hsapiens_snp:hsapiens_snp.snp_filter_filter |
hsapiens_snp:hsapiens_snp.chr_name |
Flatten_List:inputlist |
hsapiens_snp:hsapiens_snp.chrom_start |
Flatten_List_2:inputlist |
Flatten_List:outputlist |
input_chr_position:chr_in |
Flatten_List_2:outputlist |
input_chr_position:in2 |
set_width |
input_chr_position:in1 |
input_chr_position:chr_out |
hsapiens_gene_ensembl:hsapiens_gene_ensembl.chromosome_name_filter |
input_chr_position:end_out |
hsapiens_gene_ensembl:hsapiens_gene_ensembl.end_filter |
input_chr_position:start_out |
hsapiens_gene_ensembl:hsapiens_gene_ensembl.start_filter |
hsapiens_gene_ensembl:hsapiens_gene_ensembl.entrezgene |
EntrezGene_ID |
Uploader
License
All versions of this Workflow are
licensed under:
Version 4 (latest)
(of 4)
Credits (2)
(People/Groups)
Attributions (0)
(Workflows/Files)
None
Shared with Groups (3)
Featured In Packs (1)
Log in to add to one of your Packs
Attributed By (1)
(Workflows/Files)
Favourited By (0)
No one
Statistics
Other workflows that use similar services
(0)
There are no workflows in myExperiment that use similar services to this Workflow.
Comments (1)
Log in to make a comment
Works great and is well documented. Perhaps the output could also include a list with the gene names?