The goal of the unisets package is to provide a collection of S4 classes to store relationships between elements and sets, with a particular emphasis on gene sets.
You can install the released version of unisets from GitHub with:
devtools::install_github("kevinrue/unisets")
To compile the vignette as well, please use the following command:
devtools::install_github("kevinrue/unisets", build_opts = c("--no-resave-data", "--no-manual"))
This is a basic example which shows you how to create a Sets
object, to store simple associations between genes and sets:
library(unisets)
sets_list <- list(
set1 = c("A", "B"),
set2 = c("B", "C", "D")
)
relations_table <- DataFrame(
element = unlist(sets_list),
set = rep(names(sets_list), lengths(sets_list)),
extra1 = rep(c("ABC", "DEF"), c(3L, 2L)),
extra2 = seq(0, 1, length.out = 5L)
)
element_data <- IdVector(c("A", "B", "C", "D"))
elementMetadata(element_data) <- DataFrame(
stat1 = c( 1, 2, 3, 4 ),
info1 = c("a", "b", "c", "d")
)
set_data <- IdVector(c("set1", "set2"))
elementMetadata(set_data) <- DataFrame(
stat1 = c( 100, 200 ),
info1 = c("abc", "def")
)
base_set <- Sets(relations_table, element_data, set_data)
base_set
Sets with 5 relations between 4 elements and 2 sets
element set | extra1 extra2
<character> <character> | <character> <numeric>
[1] A set1 | ABC 0
[2] B set1 | ABC 0.25
[3] B set2 | ABC 0.5
[4] C set2 | DEF 0.75
[5] D set2 | DEF 1
-----------
elementInfo: IdVector with 2 metadata (stat1, info1)
setInfo: IdVector with 2 metadata (stat1, info1)