|
a |
|
b/R/auxiliary_brainarray.R |
|
|
1 |
cleanName <- function(array_type) { |
|
|
2 |
gsub("[-_]", "", tolower(array_type)) |
|
|
3 |
} |
|
|
4 |
|
|
|
5 |
#' Available Brainaaray versions |
|
|
6 |
#' |
|
|
7 |
#' Lists the available Brainaaray versions for \pkg{DLBCLdata}. The list is |
|
|
8 |
#' currently hard coded. Newer versions may work. |
|
|
9 |
#' |
|
|
10 |
#' @return A character vector of the available versions. |
|
|
11 |
#' @export |
|
|
12 |
listVersions <- function() { |
|
|
13 |
c("19.0.0", "18.0.0", "17.1.0", "17.0.0", "16.0.0", "15.1.0", "15.0.0", |
|
|
14 |
"14.1.0", "14.0.0", "13.0.0") |
|
|
15 |
} |
|
|
16 |
|
|
|
17 |
getSubversion <- function(version, n = 1) { |
|
|
18 |
return(as.numeric(unlist(strsplit(version, "\\.")))[n]) |
|
|
19 |
} |
|
|
20 |
|
|
|
21 |
arrayToBrainarrayName <- function(array_type) { |
|
|
22 |
ans <- switch(array_type, |
|
|
23 |
"HuGene-1_0-st-v1" = "hugene10st", |
|
|
24 |
cleanName(array_type)) |
|
|
25 |
return(ans) |
|
|
26 |
} |
|
|
27 |
|
|
|
28 |
getCustomCDFName <- function(brain_dat, array_type) { |
|
|
29 |
custom_cdf_name <- |
|
|
30 |
with(brain_dat, CustomCDFName[match(arrayToBrainarrayName(array_type), |
|
|
31 |
tolower(Chip))]) |
|
|
32 |
return(custom_cdf_name) |
|
|
33 |
} |
|
|
34 |
|
|
|
35 |
getBrainarrayPackages <- function(brain_dat, array_type) { |
|
|
36 |
custom_cdf_name <- getCustomCDFName(brain_dat, array_type) |
|
|
37 |
r_packages <- paste0(cleanName(custom_cdf_name), c("cdf", "probe")) |
|
|
38 |
return(r_packages) |
|
|
39 |
} |
|
|
40 |
|
|
|
41 |
#' @importFrom XML readHTMLTable |
|
|
42 |
getBrainarrayTargets <- function(version) { |
|
|
43 |
base_url <- paste0("http://brainarray.mbni.med.umich.edu/Brainarray/", |
|
|
44 |
"Database/CustomCDF/CDF_download.asp") |
|
|
45 |
|
|
|
46 |
brain_dat <- readHTMLTable(base_url, stringsAsFactors = FALSE) |
|
|
47 |
brain_dat <- brain_dat[sapply(brain_dat, is.data.frame)] |
|
|
48 |
brain_dat <- brain_dat[-(1:2)] |
|
|
49 |
|
|
|
50 |
if (missing(version)) { |
|
|
51 |
ans <- as.character(brain_dat[[length(brain_dat)]][["Custom CDF"]]) |
|
|
52 |
} else { |
|
|
53 |
v <- getSubversion(version, n = 1) |
|
|
54 |
ans <- as.character(brain_dat[[v]][["Custom CDF"]]) |
|
|
55 |
} |
|
|
56 |
return(ans) |
|
|
57 |
} |
|
|
58 |
|
|
|
59 |
|