# the GDS file
(gds.fn <- seqExampleFileName("gds"))
# display
(f <- seqOpen(gds.fn))
# get 'sample.id
(samp.id <- seqGetData(f, "sample.id"))
# "NA06984" "NA06985" "NA06986" ...
# get 'variant.id'
head(variant.id <- seqGetData(f, "variant.id"))
# get 'chromosome'
table(seqGetData(f, "chromosome"))
# get 'allele'
head(seqGetData(f, "allele"))
# "T,C" "G,A" "G,A" ...
# get '$chrom_pos'
head(seqGetData(f, "$chrom_pos"))
# get '$dosage'
seqGetData(f, "$dosage")[1:6, 1:10]
# get '$num_allele'
head(seqGetData(f, "$num_allele"))
# set sample and variant filters
seqSetFilter(f, sample.id=samp.id[c(2,4,6,8,10)])
set.seed(100)
seqSetFilter(f, variant.id=sample(variant.id, 10))
# get genotypic data
seqGetData(f, "genotype")
# get annotation/info/DP
seqGetData(f, "annotation/info/DP")
# get annotation/info/AA, a variable-length dataset
seqGetData(f, "annotation/info/AA")
# $length <- indicating the length of each variable-length data
# [1] 1 1 1 1 1 1 ...
# $data <- the data according to $length
# [1] "T" "C" "T" "C" "G" "C" ...
# get annotation/format/DP, a variable-length dataset
seqGetData(f, "annotation/format/DP")
# $length <- indicating the length of each variable-length data
# [1] 1 1 1 1 1 1 ...
# $data <- the data according to $length
# variant
# sample [,1] [,2] [,3] [,4] [,5] [,6] ...
# [1,] 25 25 22 3 4 17 ...
# close the GDS file
seqClose(f)
Run the code above in your browser using DataLab