The goal of LabguruR is to allow researchers, data scientists, bioniformaticians to directly communicate with Labguru. Currently the package allows you to pull and push datasets and visualizations. The currrent package is under development and you can add tickets and issues;
You can install LabguruR from github with:
# Install devtools if needed
if (!require(devtools)) install.packages("devtools")
devtools::install_github("BioData/LabguruR")You require httr and jsonlite to use LabguruR. If these dependencies weren't installed automatically (or you're not sure), run:
if (!require(httr)) install.packages("httr")
if (!require(jsonlite)) install.packages("jsonlite")Load LabguruR
library(LabguruR)First get an authentication token using labguru_authenticate.
labguru_authenticate(email = "my@@email.com",
password = "mypassword",
server = "https://my.labguru.com",
set_sys = TRUE)With set_sys = TRUE your system variables LABGURU_SERVER and LABGURU_TOKEN are automatically set and can be picked up by future function calls conencting to the Labguru API. Check these variables using labguru_sys_variables()
labguru_sys_variables()You can now upload a dataset to Labguru using labguru_upload_dataset. There is sample data you can load from the package.
data("compensation")
compensationup_0 <- labguru_upload_dataset(dataset = compensation,
name = paste0("compensation_", gsub("[^[:alnum:]]","", date())))
up_0ld <- labguru_list_datasets(page = 1)
head(ld)df <- labguru_download_dataset(dataset_id = 1)
head(df)Upload a R script
up_1 <- labguru_upload_file(file = "../data-raw/sample_upload_script.R",
title = "My R script")
up_1Upload an image
up_2 <- labguru_upload_file(file = "../data-raw/grazing.png",
title = paste0("grazing_", gsub("[^[:alnum:]]","", date())))
up_2Attach uploaded file to a database
up_3 <- labguru_link_visualization(dataset_id = 5511,
attachment_id = up_2$id,
name = "my_link")
up_3Upload image with immediate link to database
up_4 <- labguru_upload_visualization(file = "../data-raw/grazing.png",
title = paste0("grazing_attached_", gsub("[^[:alnum:]]","", date())),
dataset_id = 61,
name = "my_second_link")
up_4List all projects
projects <- labguru_list_projects(get_cols = "all")
dplyr::glimpse(projects)Download project information
project_1 <- labguru_get_project(project_id = 1)
project_1Start new project
project_new <- labguru_add_project(title = "My new project",
description = "This project is an analysis of ...",
return = "all")
project_newList all folders
folders <- labguru_list_folders(project_id = 91, # project_id = NULL for all folders in all projects (default)
get_cols = "all")
dplyr::glimpse(folders)Download folder information
folder_1 <- labguru_get_folder(folder_id = 31)
folder_1Start new folder
folder_new <- labguru_add_folder(title = "My new folder",
project_id = 91,
description = "This folder is a test from LabguruR",
return = "all")
folder_newList all experiments
experiments <- labguru_list_experiments(folder_id = 41,
get_cols = "limited")
experimentsDownload experiment information
experiment_1 <- labguru_get_experiment(experiment_id = 141)
experiment_1[1:4]Start new experiment
experiment_new <- labguru_add_experiment(title = "My new experiment 26-7-2018",
project_id = 91,
folder_id = 41,
description = "This experiment is a test from LabguruR 26-7-2018",
return = "all")
experiment_new[1:4]ep_list <- labguru_list_experiment_procedures(experiment_id = 141, get_cols = "all")
dplyr::glimpse(ep_list)ep_new <- labguru_add_experiment_procedure(name = "New procedure 26-7-2018",
experiment_id = 141)
ep_newep_271 <- labguru_get_experiment_procedure(experiment_procedure_id = 721)
ep_271List elements is EMPTY!
el_list <- labguru_list_elements(experiment_id = 141)el_new <- labguru_add_element(data = "<p>Hello World</p>",
experiment_procedure_id = 721)
el_newel_1341 <- labguru_get_element(element_id = 1341)
el_1341el_rsc <- labguru_add_element(rscript = "../data-raw/sample_upload_script.R",
experiment_procedure_id = 721)
el_rscUse labguru image id (attachments_id)
el_img <- labguru_add_element(img_id = 1971,
experiment_procedure_id = 721)
el_img