# construct annmatrix object
x <- matrix(rnorm(20*10), 20, 10)
coldata <- data.frame(group = rep(c("case", "control"), each = 5),
gender = sample(c("M", "F"), 10, replace = TRUE))
rowdata <- data.frame(chr = sample(c("chr1", "chr2"), 20, replace = TRUE),
pos = runif(20, 0, 1000000))
X <- annmatrix(x, rowdata, coldata)
pca <- prcomp(t(X))
pca$rotation
pca$rotation$''
scores <- t(pca$rotation) %*% X
scores@var_explained
scores$gender
Run the code above in your browser using DataLab