# Obtaining data table headers from GEO using GEOquery

For a study in GEO, I would like to obtain the data table header descriptions, specifically the "VALUE" column for all samples in the study.

If you go here: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE99511) and then scroll down and click one of the samples: let's choose "GSM2644971". Then scroll down and you should see "Data table header descriptions" and below that you should see "VALUE Normalized (provided the normalization method) Average Beta". That information is what I want.

I tried using assayData() from the Biobase package but I didn't know whether the method takes a sample, a matrix of samples, or something else as a parameter. Apparently it takes a S4 and then returns some random text but I don't know how to use that random text.

EDITED:

For example, if I do:

library(Biobase)
library(GEOquery)

getgeo<-getGEO("GSE99511")
assayData(getgeo\$GSE99511_series_matrix.txt.gz)


When I use assayData() I would want it to return "Normalized (provided the normalization method) Average Beta".

<environment: 0x110674178>


Please let me know if the question doesn't make sense or if there's another method that I should be using.

• It would be helpful if you could add a specific example we can copy and test on our own machines. Show us some simple data, or a way of generating appropriate random data and then show the output you get and the output you want to get instead. Jun 30 '17 at 16:40
• you can download the GEO metadata directly from the GEO page...look for the SOFT file or the series matrix files, for example. Jun 30 '17 at 19:39
• The assayData requires a SummarizedExperiment, if you want to download the description of the value you need to look at the GEOQuery package when I can (probably in 24h )
– llrs
Jun 30 '17 at 20:25
• I want to download it through GEOquery so that I can get data faster. I also updated my question to add more detail. Jun 30 '17 at 23:50
• Did you check what return getGEO, and what do you need to extract the data you want?
– llrs
Jul 1 '17 at 13:52

The short answer is that if you are seeing information in a GEO sample, then it is the sample that you need to download and access using the appropriate method. In this case, that method is Columns():

library(GEOquery)
gsm <- getGEO("GSM2644971")
Columns(gsm)

Column      Description
1         ID_REF
2         VALUE       Normalized (provided the normalization method) Average Beta
3         Detection   Pval


The longer answer: you will really benefit from sitting down with the GEOquery documentation and trying to understand the objects that it uses and their methods. It is not something you can work out by trial and error for every case-by-case basis. The tutorial is a really good starting point (you will find Columns() in there, for example).