How to convert my lat and longs to UTM within my dataframe - r

I'm a bit stuck at the moment, i have been able to create a spatial points data frame and out of this i made an object of the class Ltraj. This i will need to do further analysis. But my x and y coordinates aren't in UTM which might give problems if i do further analysis down the line.
Format:
x y date dx dy dist dt
1 -32.09245 116.0426 2015-08-07 00:22:00 -2.19e-05 0.0000194 2.925696e-05 1800 ...
Structure:
List of 1
$ :'data.frame': 109 obs. of 10 variables:
..$ x : num [1:109] -32.1 -32.1 -32.1 -32.1 -32.1 ...
..$ y : num [1:109] 116 116 116 116 116 ...
..$ date : POSIXct[1:109], format: "2015-08-07 00:22:00" "2015-08-07 00:52:00" "2015-08-07 01:22:00" "2015-08-07 01:52:00" ...
..$ dx : num [1:109] -2.19e-05 -5.73e-05 -5.15e-05 4.52e-05 -4.96e- 05 ...
..$ dy : num [1:109] 1.94e-05 -3.21e-04 -2.61e-05 2.75e-04 -1.06e-04 ...
..$ dist : num [1:109] 2.93e-05 3.26e-04 5.77e-05 2.79e-04 1.17e-04 ...
..$ dt : num [1:109] 1800 1800 1800 3840 1800 3600 1740 1920 4680 900 ...
..$ R2n : num [1:109] 0.00 8.56e-10 9.71e-08 1.24e-07 1.00e-08 ...
..$ abs.angle: num [1:109] 2.42 -1.75 -2.67 1.41 -2.01 ...
..$ rel.angle: num [1:109] NA 2.119 -0.925 -2.203 2.865 ...
..- attr(*, "id")= chr "2172"
..- attr(*, "burst")= chr "2172"
..- attr(*, "infolocs")='data.frame': 109 obs. of 1 variable:
.. ..$ pkey: Factor w/ 109 levels "2172.2015-08-07 00:22:00",..: 1 2 3 4 5 6 7 8 9 10 ...
- attr(*, "class")= chr [1:2] "ltraj" "list"
- attr(*, "typeII")= logi TRUE
- attr(*, "regular")= logi FALSE
- attr(*, "proj4string")=Formal class 'CRS' [package "sp"] with 1 slot
.. ..# projargs: chr NA
-->I was able to create a formal class Spatial points set from my lats and longs in the UTM format but that is a seperate object now:
Structure:
Formal class 'SpatialPoints' [package "sp"] with 3 slots
..# coords : num [1:109, 1:2] 409662 409664 409634 409631 409657 ...
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : NULL
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
..# bbox : num [1:2, 1:2] 406647 13536726 415659 13551107
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
.. .. ..$ : chr [1:2] "min" "max"
..# proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..# projargs: chr "+init=epsg:32750 +proj=utm +zone=50 +south +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0"
I basically want my values for x and y in the ltraj to be in UTM,
I guess i will probably have to do this before i create the object ltraj or even the spatial points dataframe.
I was wondering if anybody has any advice as to change my lats and longs to UTM within the original dataframe; or to make it into a spatial dataframe and then bind them again with the dataframe that contains "subject" and "date"?
Kind regards,
Sam Rycken

Related

Convert from spatialpixeldataframe to estUD

In short: I have a spatialpixeldataframe of a utilization distribution of an animal across a grid (udspdf) which I need to convert to estUD-class.
Background to how I got there: After calculating the KDE of a single animal, I then need to convert the estUD-class object to a spatialpixeldataframe in order to remove non-habitat cells, and rescale the utilisation distribution of the habitat-cells to 1. I then need to convert the spatialpixeldataframe back to an estUD class file so that I can run kerneloverlaphr() on it.
I have the following code, which converts it to an estUDm-class. But I need it in estUD-class, as there is only one animal.
re <- lapply(1:ncol(udspdf), function(i) {
so <- new("estUD", udspdf[,i])
so#h <- list(h=0, meth="specified") # specify dummy h values: they are only required to recreate the estUDm
so#vol <- FALSE
return(so)
})
names(re) <- names(udspdf)
class(re) <- "estUDm"
image(re)
If I just change
class(re) <- "estUD"
This seems to work, but then I can see there is an issue because
image(re)
renders the following error: Error in is(x, "GridTopology") :
trying to get slot "grid" from an object (class "estUD") that is not an S4 object
I am sorry I do not know how to provide a reproducible example for such an example as the data is quite complex. I hope that a general code exists.
Any pointers appreciated!
> str(re)
List of 1
$ ud:Formal class 'estUD' [package "adehabitatHR"] with 9 slots
.. ..# h :List of 2
.. .. ..$ h : num 0
.. .. ..$ meth: chr "specified"
.. ..# vol : logi FALSE
.. ..# data :'data.frame': 4400000 obs. of 1 variable:
.. .. ..$ ud: num [1:4400000] 0 0 0 0 0 0 0 0 0 0 ...
.. ..# coords.nrs : num(0)
.. ..# grid :Formal class 'GridTopology' [package "sp"] with 3 slots
.. .. .. ..# cellcentre.offset: Named num [1:2] -70 -60
.. .. .. .. ..- attr(*, "names")= chr [1:2] "Var2" "Var1"
.. .. .. ..# cellsize : Named num [1:2] 0.01 0.01
.. .. .. .. ..- attr(*, "names")= chr [1:2] "Var2" "Var1"
.. .. .. ..# cells.dim : Named int [1:2] 2000 2200
.. .. .. .. ..- attr(*, "names")= chr [1:2] "Var2" "Var1"
.. ..# grid.index : int [1:4400000] 1 2 3 4 5 6 7 8 9 10 ...
.. ..# coords : num [1:4400000, 1:2] -70 -70 -70 -70 -70 ...
.. .. ..- attr(*, "dimnames")=List of 2
.. .. .. ..$ : NULL
.. .. .. ..$ : chr [1:2] "Var2" "Var1"
.. ..# bbox : num [1:2, 1:2] -70 -60 -50 -38
.. .. ..- attr(*, "dimnames")=List of 2
.. .. .. ..$ : chr [1:2] "Var2" "Var1"
.. .. .. ..$ : chr [1:2] "min" "max"
.. ..# proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. .. ..# projargs: chr "+proj=longlat +datum=WGS84 +no_defs"
- attr(*, "class")= chr "estUDm"
my code for kerneloverlaphr(), which works with the outputs stright from kernelUD() (estUD-class) is as follows:
NWI15b, BCI15b and BCI15i are my individual animals
library(adehabitatHR)
# convert list of KDEs (estUDs) to class estUDm
tot <- list(NWI15b=NWI15b, BCI15b=BCI15b, BCI15i=BCI15i)
class(tot) <- "estUDm"
#calculate overlap using kerneloverlaphr
kerneloverlaphr(tot, method = c("BA"), percent = 95, conditional = FALSE)
dput(head(as.data.frame.estUD(re), n = 10))
Error in h(simpleError(msg, call)) :
error in evaluating the argument 'x' in selecting a method for function 'head': no method or default for coercing “estUDm” to “SpatialPixelsDataFrame”
> unique(re#data$ud)
Error in h(simpleError(msg, call)) :
error in evaluating the argument 'x' in selecting a method for function 'unique': trying to get slot "data" from an object (class "estUDm") that is not an S4 object
structure of object fed to kernelUD
str(track_sp)
Formal class 'SpatialPoints' [package "sp"] with 3 slots
..# coords : num [1:9790, 1:2] -59.2 -59.2 -59.2 -59.2 -59.2 ...
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:9790] "1" "2" "3" "4" ...
.. .. ..$ : chr [1:2] "x" "y"
..# bbox : num [1:2, 1:2] -65.8 -55.6 -56.1 -52.2
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:2] "x" "y"
.. .. ..$ : chr [1:2] "min" "max"
..# proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..# projargs: chr "+proj=longlat +datum=WGS84 +no_defs"
Where we have
re <- lapply(1:ncol(udspdf), function(i) {
so <- new("estUD", udspdf[,i])
so#h <- list(h=0, meth="specified") # specify dummy h values: they are only required to recreate the estUDm
so#vol <- FALSE
return(so)
})
> names(re) <- names(udspdf)
> class(re) <- "estUDm"
> image(re)
We then need to simply add this:
colonyA <- re[[1]]
#and then do the same after running the code for the next colony
colonyB<- re[[1]]

How can I add a class name to numeric raster values in a terra SpatRaster?

I'm working with the Circumpolar Arctic Vegetation map. Stored as a SpatRaster with terra, the raster has 21 land cover classes.
> str(lc_2003)
Formal class 'SpatRaster' [package "terra"] with 1 slot
..# ptr:Reference class 'Rcpp_SpatRaster' [package "terra"] with 17 fields
.. ..$ depth : num 0
.. ..$ extent :Reference class 'Rcpp_SpatExtent' [package "terra"] with 2 fields
.. .. ..$ valid : logi TRUE
.. .. ..$ vector: num [1:4] 3946387 7965081 2200504 5681579
.. .. ..and 27 methods, of which 13 are possibly relevant:
.. .. .. align, as.points, ceil, compare, finalize, floor, initialize, intersect, round, sample,
.. .. .. sampleRandom, sampleRegular, union
.. ..$ filenames: chr ""
.. ..$ hasRange : logi TRUE
.. ..$ hasTime : logi FALSE
.. ..$ hasValues: logi TRUE
.. ..$ inMemory : logi TRUE
.. ..$ messages :Reference class 'Rcpp_SpatMessages' [package "terra"] with 2 fields
.. .. ..$ has_error : logi FALSE
.. .. ..$ has_warning: logi FALSE
.. .. ..and 18 methods, of which 4 are possibly relevant:
.. .. .. finalize, getError, getWarnings, initialize
.. ..$ names : chr "PHYSIOG"
.. ..$ origin : num [1:2] 102.7 91.3
.. ..$ range_max: num 21
.. ..$ range_min: num 1
.. ..$ res : num [1:2] 5172 3881
.. ..$ rgb : logi FALSE
.. ..$ time : num 0
.. ..$ timestep : chr "seconds"
.. ..$ units : chr ""
However, I would like to associate each value in the layer PHYSIOG with it's actual landcover class name. This would be useful to me for viewing the file in ArcGis, as well as for assessing which habitat type certain survey plots fall in.
landcover_classes <- data.frame(lc_code = 1:21,
lc_class = c(
"Cryptogam, herb barren",
"Rush/grass, forb, cryptogam tundra",
"Cryptogam barren complex (bedrock)",
"Prostrate dwarf-shrub, herb tundra",
"Graminoid, prostrate dwarf-shrub, forb tundra",
"Prostrate/Hemiprostrate dwarf-shrub tundra",
"Nontussock sedge, dwarf-shrub, moss tundra",
"Tussock-sedge, dwarf-shrub, moss tundra",
"Erect dwarf-shrub tundra",
"Low-shrub tundra",
"Missing (Cryprogram dwarf-shrub?)",
"Sedge/grass, moss wetland",
"Sedge, moss, dwarf-shrub wetland",
"Sedge, moss, low-shrub wetland",
"Noncarbonate mountain complex",
"Carbonate mountain complex",
"Nunatak complex",
"Glaciers",
"Water",
"Lagoon",
"Non-Arctic areas"))
How could I add this data to the SpatRaster?
(I'm not sure how to make a reproducible example of a SpatRaster. I'm going to ask this in a separate question)
You should be able to do
levels(lc_2003) <- landcover_classes
And see the results with
plot(lc_2003)
See the examples in ?terra::levels.

Plotting realisations of random Gaussian fields using RandomFields package results in blank graph. Why?

For some reason when I try to using the plot() function to visualise the output of the RFsimulate() function in the RandomFields package, the output is always an empty plot.
I am just using the example code included in the help file:
## first let us look at the list of implemented models
RFgetModelNames(type="positive definite", domain="single variable",
iso="isotropic")
## our choice is the exponential model;
## the model includes nugget effect and the mean:
model <- RMexp(var=5, scale=10) + # with variance 4 and scale 10
RMnugget(var=1) + # nugget
RMtrend(mean=0.5) # and mean
## define the locations:
from <- 0
to <- 20
x.seq <- seq(from, to, length=200)
y.seq <- seq(from, to, length=200)
simu <- RFsimulate(model=model, x=x.seq, y=y.seq)
str(simu)
Which gives:
Formal class 'RFspatialGridDataFrame' [package ""] with 5 slots
..# .RFparams :List of 5
.. ..$ n : num 1
.. ..$ vdim : int 1
.. ..$ T : num(0)
.. ..$ coordunits: NULL
.. ..$ varunits : NULL
..# data :'data.frame': 441 obs. of 1 variable:
.. ..$ variable1: num [1:441] 4.511 2.653 3.951 0.771 2.718 ...
..# grid :Formal class 'GridTopology' [package "sp"] with 3 slots
.. .. ..# cellcentre.offset: Named num [1:2] 0 0
.. .. .. ..- attr(*, "names")= chr [1:2] "coords.x1" "coords.x2"
.. .. ..# cellsize : Named num [1:2] 1 1
.. .. .. ..- attr(*, "names")= chr [1:2] "coords.x1" "coords.x2"
.. .. ..# cells.dim : int [1:2] 21 21
..# bbox : num [1:2, 1:2] -0.5 -0.5 20.5 20.5
.. ..- attr(*, "dimnames")=List of 2
.. .. ..$ : chr [1:2] "coords.x1" "coords.x2"
.. .. ..$ : chr [1:2] "min" "max"
..# proj4string:Formal class 'CRS' [package "sp"] with 1 slot
.. .. ..# projargs: chr NA
... so data has been simulated, but when I call
plot(simu)
I end up with something like this:
e.g. Empty plot
Can anyone tell what going on here?!
I would coerce the object back to an sp SpatialGridDataFrame and plot that, as RandomFields creates a wrapper around this S4 class:
sgdf = sp::SpatialGridDataFrame(simu#grid, simu#data, simu#proj4string)
sp::plot(sgdf)
Also, you can coerce to matrix and plot using the standard graphics library:
graphics::image(as.matrix(simu))
The strange thing is that converting it to a SpatialGridDataFrame requires a flip and transpose before plotting:
graphics::image(t(apply(as.matrix(sgdf), 1, rev)))
Apparently, they are a bit internally inconsistent. The simplest solution is to convert simu to raster and plot:
r = raster::raster(simu)
raster::plot(r)

Raster plot of Netcdf climate data is rotated in R

I'm new to working with NetCDF files and I haven't been able to find the answer to my question elsewhere.
Daily precip data for year 2015 (from Gridmet): https://www.northwestknowledge.net/metdata/data/pr_2015.nc
My question: Maps are displaying with lat on the x axis and long on the y axis. How do I flip these axes? Futhermore, it also appears that values for latitude are inverted. (see linked map below)
library(raster)
library(ncdf4)
nc15 <- nc_open("C:\\Users\\vsteen\\Desktop\\BorealToad\\Climate\\pr_2015.nc")
b <- brick("C:\\Users\\vsteen\\Desktop\\BorealToad\\Climate\\pr_2015.nc",varname="precipitation_amount")
plot(b[[3]])
print(nc15)
1 variables (excluding dimension variables):
float precipitation_amount[lat,lon,day]
units: mm
description: Daily Accumulated Precipitation
_FillValue: -32767
esri_pe_string: GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]]
coordinates: lon lat
cell_methods: time: sum(interval: 24 hours)
missing_value: -32767
3 dimensions:
lon Size:1386
units: degrees_east
description: longitude
lat Size:585
units: degrees_north
description: latitude
day Size:365
units: days since 1900-01-01 00:00:00
calendar: gregorian
description: days since 1900-01-01
9 global attributes:
author: John Abatzoglou - University of Idaho, jabatzoglou#uidaho.edu
date: 20 September 2016
note1: The projection information for this file is: GCS WGS 1984.
note2: Citation: Abatzoglou, J.T., 2013, Development of gridded surface meteorological data for ecological applications and modeling, International Journal of Climatology, DOI: 10.1002/joc.3413
last_permanent_slice: 365
last_early_slice: 365
note3: Data in slices after last_permanent_slice (1-based) are considered provisional and subject to change with subsequent updates
note4: Data in slices after last_early_slice (1-based) are considered early and subject to change with subsequent updates
note5: Days correspond approximately to calendar days ending at midnight, Mountain Standard Time (7 UTC the next calendar day)
str(nc15$dim)
List of 3
$ lon:List of 10
..$ name : chr "lon"
..$ len : int 1386
..$ unlim : logi FALSE
..$ group_index : int 1
..$ group_id : int 65536
..$ id : int 0
..$ dimvarid :List of 5
.. ..$ id : int 0
.. ..$ group_index: int 1
.. ..$ group_id : int 65536
.. ..$ list_index : num -1
.. ..$ isdimvar : logi TRUE
.. ..- attr(*, "class")= chr "ncid4"
..$ units : chr "degrees_east"
..$ vals : num [1:1386(1d)] -125 -125 -125 -125 -125 ...
..$ create_dimvar: logi TRUE
..- attr(*, "class")= chr "ncdim4"
$ lat:List of 10
..$ name : chr "lat"
..$ len : int 585
..$ unlim : logi FALSE
..$ group_index : int 1
..$ group_id : int 65536
..$ id : int 1
..$ dimvarid :List of 5
.. ..$ id : int 1
.. ..$ group_index: int 1
.. ..$ group_id : int 65536
.. ..$ list_index : num -1
.. ..$ isdimvar : logi TRUE
.. ..- attr(*, "class")= chr "ncid4"
..$ units : chr "degrees_north"
..$ vals : num [1:585(1d)] 49.4 49.4 49.3 49.3 49.2 ...
..$ create_dimvar: logi TRUE
..- attr(*, "class")= chr "ncdim4"
$ day:List of 11
..$ name : chr "day"
..$ len : int 365
..$ unlim : logi FALSE
..$ group_index : int 1
..$ group_id : int 65536
..$ id : int 2
..$ dimvarid :List of 5
.. ..$ id : int 2
.. ..$ group_index: int 1
.. ..$ group_id : int 65536
.. ..$ list_index : num -1
.. ..$ isdimvar : logi TRUE
.. ..- attr(*, "class")= chr "ncid4"
..$ units : chr "days since 1900-01-01 00:00:00"
..$ calendar : chr "gregorian"
..$ vals : num [1:365(1d)] 42003 42004 42005 42006 42007 ...
..$ create_dimvar: logi TRUE
..- attr(*, "class")= chr "ncdim4"
>
Thanks in advance for any help. It will be much appreciated!
Rotated U.S. precipitation map
you can use the combination of transpose and flip from raster package:
s <- stack("pr_2015.nc", varname="precipitation_amount")
s2 <- t(flip(s, direction='y' ))
You can use the stars package to read the data directly from the netcdf file without the "rotation" problem.
library(stars)
s2 <- read_ncdf("pr_2015.nc", var = "precipitation_amount")
Here's the plot of the first image in the time series, just to show how the images are read using read_ncdf (without the rotation).
# Chose the first image from the time series
s2<- s2[,,,1]
# Plot to see it
plot(s2)

How to find out which index is out of bounds in object in R

Although I understand OOP, I've only just encountered them in R
I am using a package from Bioconductor to churn through some genomic data.
The object it creates is called readCounts and typing this into the command gives the following.
QDNAseqReadCounts (storageMode: lockedEnvironment)
assayData: 206391 features, 1 samples
element names: counts
protocolData: none
phenoData
sampleNames: SLX-10457.FastSeqA.BloodDMets_11AF_-AHMMH.s_1.r_1.fq.gz
varLabels: name total.reads used.reads expected.variance
varMetadata: labelDescription
featureData
featureNames: 1:825001-840000 1:840001-855000 ... 22:51165001-51180000 (168063 total)
fvarLabels: chromosome start ... use (9 total)
fvarMetadata: labelDescription
experimentData: use 'experimentData(object)'
Annotation:
I am trying to plot readcounts on a simple xy graph as follows:
plot(readCounts, logTransform=TRUE, ylim=c(-1000, binSize * 15))
However when I do so I get the following error:
Error in sort.int(x, partial = unique(c(lo, hi))) :
index 180 outside bounds
with the traceback() showing:
6: sort.int(x, partial = unique(c(lo, hi)))
5: FUN(newX[, i], ...)
4: apply(copynumber, 2, sdFUN, na.rm = TRUE)
3: .local(x, y, ...)
2: plot(readCounts, logTransform = TRUE, ylim = c(-1000, binSize *
15))
1: plot(readCounts, logTransform = TRUE, ylim = c(-1000, binSize *
15))
so having googled I thought it might be a missing values problem so I tried na.omit(readCounts) but got the same error again but this time setting the out of bounds index as being 207.
I have tried to inspect the data but I can't find anything wrong at row 207 although I'm not really sure which slot this refers to. I really don't know how to debug this. I'm happy to give more info regarding what I'm trying to do but I don't really know how to determine what the problem is with this error in a R object.
When I do str(readCounts) I get:
Formal class 'QDNAseqReadCounts' [package "QDNAseq"] with 7 slots
..# assayData :<environment: 0x13a99ed90>
..# phenoData :Formal class 'AnnotatedDataFrame' [package "Biobase"] with 4 slots
.. .. ..# varMetadata :'data.frame': 4 obs. of 1 variable:
.. .. .. ..$ labelDescription: chr [1:4] NA NA NA NA
.. .. ..# data :'data.frame': 1 obs. of 4 variables:
.. .. .. ..$ name : chr "SLX-10457.FastSeqA.BloodDMets_11AF_-AHMMH.s_1.r_1.fq.gz"
.. .. .. ..$ total.reads : num 0
.. .. .. ..$ used.reads : num 0
.. .. .. ..$ expected.variance: num Inf
.. .. ..# dimLabels : chr [1:2] "sampleNames" "sampleColumns"
.. .. ..# .__classVersion__:Formal class 'Versions' [package "Biobase"] with 1 slot
.. .. .. .. ..# .Data:List of 1
.. .. .. .. .. ..$ : int [1:3] 1 1 0
..# featureData :Formal class 'AnnotatedDataFrame' [package "Biobase"] with 4 slots
.. .. ..# varMetadata :'data.frame': 9 obs. of 1 variable:
.. .. .. ..$ labelDescription: chr [1:9] "Chromosome name" "Base pair start position" "Base pair end position" "Percentage of non-N nucleotides (of full bin size)" ...
.. .. ..# data :'data.frame': 168063 obs. of 9 variables:
.. .. .. ..$ chromosome : chr [1:168063] "1" "1" "1" "1" ...
.. .. .. ..$ start : num [1:168063] 825001 840001 855001 870001 885001 ...
.. .. .. ..$ end : num [1:168063] 840000 855000 870000 885000 900000 915000 930000 945000 960000 975000 ...
.. .. .. ..$ bases : num [1:168063] 100 100 100 100 100 100 100 100 100 100 ...
.. .. .. ..$ gc : num [1:168063] 48 61.8 65.1 65.5 62.6 ...
.. .. .. ..$ mappability: num [1:168063] 58.6 91.5 94.1 93.2 93.9 ...
.. .. .. ..$ blacklist : num [1:168063] 0.727 0 0 0 0 ...
.. .. .. ..$ residual : num [1:168063] -0.0627 0.05036 0.09384 0.00541 -0.00588 ...
.. .. .. ..$ use : logi [1:168063] TRUE TRUE TRUE TRUE TRUE TRUE ...
.. .. .. ..- attr(*, "na.action")=Class 'omit' Named int [1:38328] 1 2 3 4 5 6 7 8 9 10 ...
.. .. .. .. .. ..- attr(*, "names")= chr [1:38328] "1:1-15000" "1:15001-30000" "1:30001-45000" "1:45001-60000" ...
.. .. ..# dimLabels : chr [1:2] "featureNames" "featureColumns"
.. .. ..# .__classVersion__:Formal class 'Versions' [package "Biobase"] with 1 slot
.. .. .. .. ..# .Data:List of 1
.. .. .. .. .. ..$ : int [1:3] 1 1 0
..# experimentData :Formal class 'MIAME' [package "Biobase"] with 13 slots
.. .. ..# name : chr ""
.. .. ..# lab : chr ""
.. .. ..# contact : chr ""
.. .. ..# title : chr ""
.. .. ..# abstract : chr ""
.. .. ..# url : chr ""
.. .. ..# pubMedIds : chr ""
.. .. ..# samples : list()
.. .. ..# hybridizations : list()
.. .. ..# normControls : list()
.. .. ..# preprocessing : list()
.. .. ..# other : list()
.. .. ..# .__classVersion__:Formal class 'Versions' [package "Biobase"] with 1 slot
.. .. .. .. ..# .Data:List of 2
.. .. .. .. .. ..$ : int [1:3] 1 0 0
.. .. .. .. .. ..$ : int [1:3] 1 1 0
..# annotation : chr(0)
..# protocolData :Formal class 'AnnotatedDataFrame' [package "Biobase"] with 4 slots
.. .. ..# varMetadata :'data.frame': 0 obs. of 1 variable:
.. .. .. ..$ labelDescription: chr(0)
.. .. ..# data :'data.frame': 1 obs. of 0 variables
.. .. ..# dimLabels : chr [1:2] "sampleNames" "sampleColumns"
.. .. ..# .__classVersion__:Formal class 'Versions' [package "Biobase"] with 1 slot
.. .. .. .. ..# .Data:List of 1
.. .. .. .. .. ..$ : int [1:3] 1 1 0
..# .__classVersion__:Formal class 'Versions' [package "Biobase"] with 1 slot
.. .. ..# .Data:List of 4
.. .. .. ..$ : int [1:3] 3 1 2
.. .. .. ..$ : int [1:3] 2 26 0
.. .. .. ..$ : int [1:3] 1 3 0
.. .. .. ..$ : int [1:3] 1 2 4

Resources