Augment for q_matrix
accepts a model object and a dataset and adds Q values
to each observation in the dataset. Q values are stored in separate columns,
which is given name with the pattern ".Q1",".Q2", etc. For consistency with
broom::augment.prcomp, a column ".rownames" is also returned; it is a copy
of 'id', but it ensures that any scripts written for data augmented with
broom::augment.prcomp will work out of the box (this is especially helpful
when adapting plotting scripts).
Usage
# S3 method for class 'q_matrix'
augment(x, data = NULL, ...)
Value
A gen_tibble containing the original data along with additional columns containing each observation's Q values.
Examples
example_gt <- example_gt("gen_tbl")
# Create a gt_admix object
admix_obj <- example_gt %>% gt_snmf(k = 1:3, project = "force")
# Extract a Q matrix
q_mat_k3 <- get_q_matrix(admix_obj, k = 3, run = 1)
# Augment the gen_tibble with Q values
augment(q_mat_k3, data = example_gt)
#> # A gen_tibble: 6 loci
#> # A tibble: 7 × 7
#> id population genotypes .rownames .Q1 .Q2 .Q3
#> <chr> <chr> <vctr_SNP> <chr> <q_matrix> <q_matrix> <q_matrix>
#> 1 a pop1 1 a 9.999e-05 9.999e-05 9.998e-01
#> 2 b pop1 2 b 9.999e-05 9.998e-01 9.999e-05
#> 3 c pop2 3 c 9.998e-01 9.999e-05 9.999e-05
#> 4 d pop2 4 d 9.999e-05 9.999e-05 9.998e-01
#> 5 e pop1 5 e 9.999e-05 9.999e-05 9.998e-01
#> 6 f pop3 6 f 9.998e-01 9.999e-05 9.999e-05
#> 7 g pop3 7 g 9.999e-05 9.998e-01 9.999e-05