dsSurvival Documentation - Alternative Dataset sources/Servers

dsSurvival is a DataSHIELD package for privacy preserving survival models in DataSHIELD.

There is a well documented tutorial on dsSurvival: Privacy preserving survival models in DataSHIELD, but the servers used in this example (opal-sandbox.mrc-epid.cam.ac.uk) are now access-restricted.

I was wondering if one of the following would be possible:

  1. To replace the server here with a functional one (probably risky unless there is a dedicated maintainer)
  2. To release a similarly shaped dataset containing the variables cens, age etc. so that data analysts can try following the tutorial on their own machines.
  3. A rewrite of the tutorial using dsLite, enabling the use of a custom local dataset.

Thanks in advance :slight_smile:

Hi,

The server https://opal-demo.obiba.org is available, using the “survival” profile.

Regards
Yannick

1 Like

Oh, thanks!

Is that “survival” as username?

@yannick

I checked the obiba opal page for demo server info. And there are only two profiles for

  • Administrator
  • DataSHIELD user

https://www.obiba.org/pages/products/opal/

I cannot seem to find the “survival” profile.

A profile is not a user profile. Here we are talking about Datashield profiles. See DataSHIELD — Opal documentation

Regards
Yannick

1 Like

Late response, but this reprex should work for accessing the SURVIVAL profile + tables:

library(DSI)
library(DSOpal)

url <- "https://opal-demo.obiba.org"
profile <- "survival"
user <- "dsuser"
password <- "P@ssw0rd"

# Create a login data object
logindata <- data.frame(server = 'DEMO',
                        url=url,
                        user = user,
                        password = password,
                        profile = profile,
                        stringsAsFactors = FALSE)

# Log in to the DataSHIELD server
connections <- DSI::datashield.login(logins = logindata, assign = TRUE) 

# Assign from a SURVIVAL table
DSI::datashield.assign.table(
  conns = connections,
  symbol = "DST",
  table = c("SURVIVAL.EXPAND_WITH_MISSING1"))

Todo: I would like to expand this with commands to execute after loading in the table.

Not sure I understand your question, but you have dsBase available in this profile:

> datashield.pkg_status(connections)
$package_status
           DEMO
dsBase     TRUE
dsSurvival TRUE
resourcer  TRUE

$version_status
           DEMO   
dsBase     "6.3.0"
dsSurvival "2.1.3"
resourcer  "1.4.0"

Regards
Yannick