Learn R Programming

⚠️There's a newer version (3.4.2) of this package.Take me there.

Opal R

Opal R Client for the Opal data warehouse. Most of the web services of Opal can be reached by an opalr function: import/export, data dictionaries, projects, tables, resources, permissions, users, DataSHIELD profiles etc.

See opalr documentation.

Installation:

# install from CRAN
install.packages("opalr")

# or install latest development version
remotes::install_github("obiba/opalr")

Basic usage:

library(opalr)
o <- opal.login('administrator', 'password', url = 'https://opal-demo.obiba.org')

# assign a table (as a data.frame) to a R symbol
opal.assign(o, 'D', 'CNSIM.CNSIM1')

# perform R operations on the server side
opal.execute(o, 'summary(D$GENDER)')
opal.execute(o, 'summary(D$LAB_GLUC)')

opal.logout(o)

Options

Some helper options can be defined to control default values and behavior:

  • opal.username, the login user name (default is NULL).
  • opal.password, the login user password (default is NULL).
  • opal.token, the login personal access token (default is NULL).
  • opal.url, the login Opal URL (default is NULL).
  • opal.opts, the curl options (default is NULL), see httr::httr_options.
  • opal.profile, the login profile (R servers cluster name) (default is NULL).
  • opal.progress, whether to show progress bar (default is TRUE).
  • opal.progress.clear, whether to clear progress bar after it is completed (default is FALSE).
  • opal.retry.times, the maximum number of GET requests to attempt (default is 3, no retry when value is 1).
  • opal.retry.quiet, whether to print a message displaying how long until the next request (default is FALSE).

Cookbooks

DataSHIELD Client

See the DSOpal documentation.

Copy Link

Version

Install

install.packages('opalr')

Monthly Downloads

648

Version

3.4.1

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Last Published

January 10th, 2024

Functions in opalr (3.4.1)

.tickProgress

Output the progress status if option "datashield.progress" is allows to.
.select

Returns a list r such that r[[i]] == l[[i]][field] for all i:length(l)
.getRSessionId

Extract R session Id from opal object, create a new R session if not found.
dsadmin.get_options

Get the DataSHIELD options
dsadmin.get_methods

Get DataSHIELD methods
dsadmin.install_local_package

Install a DataSHIELD package from a local archive file
.handleResponse

Default request response handler.
dsadmin.install_github_package

Install a DataSHIELD package from GitHub
dsadmin.activity_summary

Get DataSHIELD activity summary
dsadmin.get_method

Get a DataSHIELD method
.isContentEmpty

Check if response content is empty.
.extractLabel

Extract label for locale. If not found, fallback to undefined language label (if any).
.rmOpalSession

Remove a Opal session (logout)
.extractOpalSessionId

Extract opalsid from cookie data frame.
.is.verbose

Verbose option
.rmRSession

Remove a R session from Opal.
dsadmin.package_descriptions

Get DataSHIELD package descriptions
dsadmin.installed_package

Check DataSHIELD package
dsadmin.perm

Get the DataSHIELD permissions
dsadmin.install_package

Install a DataSHIELD package
.newSession

Create a new R session in Opal.
dsadmin.profile_init

Initialize a DataSHIELD profile
.opal.login

Create the opal object
.getSessions

Get all R session in Opal.
dsadmin.profile_create

Create a DataSHIELD profile
.handleResponseOrCallback

Process response with default handler or the provided one
dsadmin.profile_perm

Get the permissions of a DataSHIELD profile
.handleResponseLocation

Default request response Location handler.
dsadmin.rm_method

Remove DataSHIELD method
dsadmin.profile_rparser

Set or remove the R parser version of a DataSHIELD profile
dsadmin.profile_delete

Delete a DataSHIELD profile
dsadmin.rm_methods

Remove DataSHIELD methods.
dsadmin.set_option

Set DataSHIELD option
dsadmin.unpublish_package

Unpublish DataSHIELD package settings
dsadmin.set_package_methods

Set DataSHIELD package methods
oadmin.activity

Get R activity
.tokenHeader

Constructs the value for the X-Opal-Auth header
dsadmin.activity

Get DataSHIELD activity
dsadmin.log

Get DataSHIELD logs
dsadmin.package_description

Get DataSHIELD package description
.listToJson

Simple transformation function of a list into a JSON object/array.
.url

Utility method to build urls. Concatenates all arguments and adds a '/' separator between each element
.newProgress

Create a new progress instance with default settings.
.verbose

Verbose flag
dsadmin.profiles

Get DataSHIELD profiles
dsadmin.perm_add

Add or update a DataSHIELD permission
dsadmin.rm_option

Remove a DataSHIELD option
dsadmin.rm_options

Remove all DataSHIELD options
oadmin.perm

Get the R permissions (deprecated)
dsadmin.perm_delete

Delete a DataSHIELD permission
dsadmin.profile_perm_delete

Delete a permission from a DataSHIELD profile
oadmin.activity_summary

Get R activity summary
dsadmin.profile_perm_add

Add or update a permission on a DataSHIELD profile
oadmin.installed_package

Check package is installed
oadmin.install_cran_package

Install a package from CRAN
oadmin.user_exists

Check user exists
oadmin.install_devtools

Install devtools package
oadmin.package_description

Get package description
oadmin.log_sql

Get Opal SQL API logs
oadmin.user_profile_delete

Delete a user profile
oadmin.system_perm_delete

Delete a System permission
oadmin.install_bioconductor_package

Install a package from Bioconductor
oadmin.user_add

Add a user
oadmin.users

Get the users
opal.annotate

Apply the annotations to a Opal table
oadmin.system_metrics

Get system metrics
opal.assign

Data or expression assignment
oadmin.remove_package

Remove package
oadmin.installed_packages

List installed packages
oadmin.perm_add

Add or update a R permission (deprecated)
oadmin.user_profiles

Get user profiles
oadmin.r_perm_add

Add or update a R permission
oadmin.r_perm_delete

Delete a R permission
opal.assign.data

Data assignment
dsadmin.profile

Get a DataSHIELD profile
oadmin.user_reset_password

Reset user password
opal.command_result

Get result of an asynchronous command
opal.execute

Execute a R script
opal.command

Get an asynchronous command
opal.login

Opal login
opal.project_backup

Backup a project
opal.delete

Generic REST resource deletion.
opal.load_package

Load package
opal.project

Get a project
opal.attribute_values

Get a vector of attribute values
opal.datasources

Get datasources
opal.commands

List the asynchronous commands
opal.assign.table.tibble

Data assignment to a tibble
opal.project_command

Get project task
opal.assign.table

Data assignment to a data.frame
opal.datasource

Get a datasource
dsadmin.profile_exists

Check a DataSHIELD profile exists
dsadmin.profile_access

Restrict or open access to a DataSHIELD profile
dsadmin.profile_enable

Enable or disable a DataSHIELD profile
dsadmin.publish_package

Publish DataSHIELD package settings
opal.file_cp

Copy a file
opal.commands_rm

Remove all asynchronous commands
opal.command_rm

Remove an asynchronous command
opal.resource_get

Get the resource object of a project
opal.resource_perm

Get the permissions on a resource
opal.perms

Get the permissions of a subject
opal.projects_databases

Get projects databases
opal.logout

Logout from Opal(s)
opal.file_download

Download a file
dsadmin.rm_package_methods

Remove DataSHIELD package methods
opal.symbols

List R symbols
opal.projects

Get projects
opal.file_upload

Upload a file or a folder
opal.sql_history

SQL query execution history
opal.file_unzip

Unzip a zip archive file
opal.symbol_import

Import a tibble
opal.table

Get a table of a datasource
opal.table_dictionary_get

Get the dictionary of a Opal table
opal.table_dictionary_update

Update the dictionary of a Opal table
oadmin.install_local_package

Install a package from a local archive file
dsadmin.set_method

Set DataSHIELD method
oadmin.install_github_package

Install a package from GitHub
oadmin.perm_delete

Delete a R permission (deprecated)
opal.table_truncate

Truncate a Opal table
oadmin.r_perm

Get the R permissions
oadmin.install_package

Install CRAN package
oadmin.log

Get Opal main logs
oadmin.installed_devtools

Check devtools package
dsadmin.remove_package

Remove DataSHIELD package
oadmin.system_perm_add

Add or update a System permission
oadmin.system_perm

Get the System permissions
opal.taxonomy_download

Download a taxonomy file
opal.assign.resource

Resource assignment
oadmin.log_rest

Get Opal REST API logs
opal.assign.script

R script assignment
opal.token_r_create

Create a personal access token for R usage
opal.token_renew

Renew an inactive personal access token
opal.taxonomy_upload

Upload a taxonomy file
oadmin.user_delete

Delete a user
oadmin.user_enable

Enable a user
opal.file

Get file content
opal.as_md_table

Array to Markdown
opal.annotations

Get the annotations of a Opal table
opal.execute.source

Execute a R file script
opal.file_mkdir_tmp

Make a temporary folder
opal.project_create

Create a project
opal.profiles

List R profiles
opal.post

Generic REST resource creation.
opal.file_mv

Move and/or rename a file
opal.get

Generic REST resource getter.
opal.file_write

Write a file
opal.project_exists

Check a project exists
opal.file_mkdir

Make a folder
opal.project_delete

Delete a project
opal.file_ls

List content of a folder
opal.project_perm_delete

Delete a permission from a project
opal.resource_view_create

Create an Opal view over a resource reference
opal.project_perm_add

Add or update a permission on a project
opal.project_perm

Get the permissions on a project
opal.project_restore

Restore a project
opal.workspace_rm

Remove a R workspace from a opal.
opal.workspace_restore

Restore a R workspace from a opal.
opal.rm

Remove a R symbol (deprecated)
opal.resource_view_reconnect

Reconnect an Opal view to its underlying resource
opal.sql

Execute a SQL query on tables
opal.resource_create

Create a resource reference in a project
opal.file_rm

Remove a file
opal.put

Generic REST resource update.
opal.resource

Get a resource reference of a project
opal.file_read

Read a file
opal.resource_delete

Delete a resource reference
opal.symbol_rm

Remove a R symbol
opal.report_md

Turn a R markdown file to html.
opal.table_exists

Check a Opal table exists
opal.resource_perm_add

Add or update a permission on a resource
opal.symbol_save

Save a tibble
opal.resources_perm_add

Add or update a permission on any resource
opal.resource_perm_delete

Delete a permission from a resource
opal.table_create

Create an Opal table or view
opal.table_delete

Delete a Opal table
opal.tables_perm

Get the permissions on any table of a project
opal.resources_perm_delete

Delete a permission from any resource
opal.report

Opal report
opal.table_get

Get a Opal table as a tibble
opal.table_import

Import a file as table
opal.resource_extension_create

Create an extended resource reference in a project
opal.resource_exists

Check a resource reference exists
opal.token_sql_create

Create a personal access token for SQL usage
opal.table_view_create

Create an Opal view over tables
opal.tasks

Get the tasks
opal.taxonomies

Get taxonomies
opal.resources

Get the resource references of a project
opal.table_perm_add

Add or update a permission on a table
opal.resources_perm

Get the permissions on any resource
opal.tables_perm_delete

Delete a permission from any table of a project
opal.table_perm

Get the permissions on a table
opal.task_wait

Wait for a task to complete.
opal.vocabularies

Get the vocabularies of a taxonomy
opal.task_cancel

Cancel a task
opal.table_perm_delete

Delete a permission from a table
opal.vocabulary

Get a taxonomy vocabulary
opal.table_save

Save a local tibble as a Opal table
opal.task

Get a task
opal.tokens

Get the personal access tokens
opal.unload_package

Unload package
opal.table_view_update

Update the table references and the entity filter of an Opal view
opal.table_export

Export a table as a file
opal.variable

Get a variable of a table
opal.variable_summary

Get summary statistics of a variable of a table
opal.token_datashield_create

Create a personal access token for Datashield usage
opal.tables_perm_add

Add or update a permission on any table of a project
opal.token_delete

Delete a personal access token
opal.valueset

Get the values of an entity
opal.version_compare

Compare
opal.variables

Get variables of a table
opalr-package

opalr: 'Opal' Data Repository Client and 'DataSHIELD' Utils
opal.tables

Get tables of a datasource
opal.terms

Get the terms of a vocabulary
opal.workspace_save

Save the current session in a opal R workspace.
opal.workspaces

Get the R workspaces from a opal.
opal.taxonomy

Get a taxonomy
opal.token

Get a personal access token
opal.taxonomy_delete

Delete a taxonomy
dictionary.annotate

Set variable annotation with a taxonomy term
.authorizationHeader

Constructs the value for the Authorization header
.as.zeroOne

Turns a value into 0/1 numeric.
dictionary.inspect

Inspect the dictionary of a tibble
dictionary.annotate.harmo_status

Set variable annotation with Harmonization Status term
dictionary.annotations

List the annotations
dictionary.apply

Apply the dictionary to a tibble
.extractJsonField

Extract JSON
.getPEMFilePath

Extract absolute path to the pem file
.getContent

Wrapper of httr::content()
.handleError

Handle error response
.deparse

Turn expression into character strings.
.aclsToDataFrame

Permsissions (ACLs) into a data frame.