tidy.poLCA {broom} | R Documentation

## Tidy a(n) poLCA object

### Description

Tidy summarizes information about the components of a model. A model component might be a single term in a regression, a single hypothesis, a cluster, or a class. Exactly what tidy considers to be a model component varies cross models but is usually self-evident. If a model has several distinct types of components, you will need to specify which components to return.

### Usage

    ## S3 method for class 'poLCA'
    tidy(x, ...)

### Arguments

`x` | A `poLCA` object returned from `poLCA::poLCA()`.

`...`

Additional arguments. Not used. Needed to match generic signature only. Cautionary note: Misspelled arguments will be absorbed in `...`, where they will be ignored. If the misspelled argument has a default value, the default value will be used. For example, if you pass `conf.lvel = 0.9`, all computation will proceed using `conf.level = 0.95`. Additionally, if you pass `newdata = my_tibble` to an `augment()` method that does not accept a `newdata` argument, it will use the default value for the `data` argument.

### Value

A tibble::tibble with one row per variable-class-outcome combination, with columns:

`variable` | Manifest variable
`class` | Latent class ID, an integer
`outcome` | Outcome of manifest variable
`estimate` | Estimated class-conditional response probability
`std.error` | Standard error of estimated probability

### See Also

`tidy()`, `poLCA::poLCA()`

Other poLCA tidiers: `augment.poLCA`, `glance.poLCA`

### Examples

    if (require("poLCA", quietly = TRUE)) {
      library(poLCA)
      library(dplyr)

      data(values)
      f <- cbind(A, B, C, D)~1
      M1 <- poLCA(f, values, nclass = 2, verbose = FALSE)

      M1
      tidy(M1)
      augment(M1)
      glance(M1)

      library(ggplot2)

      ggplot(tidy(M1), aes(factor(class), estimate, fill = factor(outcome))) +
        geom_bar(stat = "identity", width = 1) +
        facet_wrap(~ variable)

      set.seed(2016)
      # compare multiple
      mods <- tibble(nclass = 1:3) %>%
        group_by(nclass) %>%
        do(mod = poLCA(f, values, nclass = .$nclass, verbose = FALSE))

      # compare log-likelihood and/or AIC, BIC
      mods %>%
        glance(mod)

      ## Three-class model with a single covariate.

      data(election)
      f2a <- cbind(MORALG,CARESG,KNOWG,LEADG,DISHONG,INTELG,
                   MORALB,CARESB,KNOWB,LEADB,DISHONB,INTELB)~PARTY
      nes2a <- poLCA(f2a, election, nclass = 3, nrep = 5, verbose = FALSE)

      td <- tidy(nes2a)
      td

      # show

      ggplot(td, aes(outcome, estimate, color = factor(class), group = class)) +
        geom_line() +
        facet_wrap(~ variable, nrow = 2) +
        theme(axis.text.x = element_text(angle = 90, hjust = 1))

      au <- augment(nes2a)
      au
      au %>%
        count(.class)

      # if the original data is provided, it leads to NAs in new columns
      # for rows that weren't predicted
      au2 <- augment(nes2a, data = election)
      au2
      dim(au2)
    }

[Package broom version 0.5.2 Index]