xQTL workbench - Cheat sheet for R scripting
Start off by connecting R to your application database. Click R api in the top right corner and copy-paste the content into an R terminal. The R API is usually available under http://{myhost}/{myapplication}/api/R/. You can now use the following commands:
> Downloading
Annotations, all attributes
find.marker()
find.individual()
find.investigation()
Annotations, specific attributes
find.marker()[,c("name")]
find.individual()[,c("name","investigation_name")]
find.investigation()[,c("id","name")]
Overview of data matrices
find.data()[,c("id","name","investigation_id","investigation_name")]
Data matrix values
dataId <- 0
data <- download.data(dataId)
> Uploading
Annotations
invId <- 0
add.individual(name="testIndv", investigation_id=invId)
add.marker(name="testMarker2", cm="11.3", bpstart="456237", investigation_id=invId)
New data matrix, plus annotations
invId <- 0
data <- NULL
data <- rbind(data, c("A", "B"))
data <- rbind(data, c("B", "A"))
marker1 = add.marker(name="myMarker1", cm="10.0", investigation_id=invId)
marker2 = add.marker(name="myMarker2", cm="20.0", investigation_id=invId)
ind1 = add.individual(name="myInd1", investigation_id=invId)
ind2 = add.individual(name="myInd2", investigation_id=invId)
colnames(data) <- c("myInd1", "myInd2")
rownames(data) <- c("myMarker1", "myMarker2")
add.datamatrix(data, name="myResults", investigation_id=invId, rowtype="Marker", coltype="Individual", valuetype="Text")
File upload
uri <- paste(app_location,"/uploadfile",sep="")
postForm(uri,
name = "example.png",
description = "my plot for experiment x",
investigation_id = "0",
investigation_name = "ClusterDemo",
type = "InvestigationFile",
file = fileUpload(filename = "~/example.png"),
style = "HTTPPOST", curl = .MOLGENIS.curlHandle
)
Automized xQTL analysis
Get a parameter from server
size <- getparameter("size",jobparams)
Do a status update
report(2,"Loading 5%...")