Skip to content

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 across 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 kde
tidy(x, ...)

Arguments

x

A kde object returned from ks::kde().

...

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. Two exceptions here are:

  • tidy() methods will warn when supplied an exponentiate argument if it will be ignored.

  • augment() methods will warn when supplied a newdata argument if it will be ignored.

Details

Returns a data frame in long format with four columns. Use tidyr::pivot_wider(..., names_from = variable, values_from = value) on the output to return to a wide format.

See also

Value

A tibble::tibble() with columns:

estimate

The estimated value of the regression term.

obs

weighted observed number of events in each group.

value

The value/estimate of the component. Results from data reshaping.

variable

Variable under consideration.

Examples


# load libraries for models and data
library(ks)

# generate data
dat <- replicate(2, rnorm(100))
k <- kde(dat)

# summarize model fit with tidiers + visualization
td <- tidy(k)
td
#> # A tibble: 45,602 × 4
#>      obs variable value estimate
#>    <int> <chr>    <dbl>    <dbl>
#>  1     1 x1       -5.41        0
#>  2     2 x1       -5.34        0
#>  3     3 x1       -5.28        0
#>  4     4 x1       -5.22        0
#>  5     5 x1       -5.15        0
#>  6     6 x1       -5.09        0
#>  7     7 x1       -5.03        0
#>  8     8 x1       -4.96        0
#>  9     9 x1       -4.90        0
#> 10    10 x1       -4.84        0
#> # ℹ 45,592 more rows

library(ggplot2)
library(dplyr)
library(tidyr)

td %>%
  pivot_wider(c(obs, estimate),
    names_from = variable,
    values_from = value
  ) %>%
  ggplot(aes(x1, x2, fill = estimate)) +
  geom_tile() +
  theme_void()
#> Warning: Specifying the `id_cols` argument by position was deprecated in tidyr
#> 1.3.0.
#>  Please explicitly name `id_cols`, like `id_cols = c(obs, estimate)`.


# also works with 3 dimensions
dat3 <- replicate(3, rnorm(100))
k3 <- kde(dat3)

td3 <- tidy(k3)
td3
#> # A tibble: 397,953 × 4
#>      obs variable value estimate
#>    <int> <chr>    <dbl>    <dbl>
#>  1     1 x1       -4.77        0
#>  2     2 x1       -4.59        0
#>  3     3 x1       -4.41        0
#>  4     4 x1       -4.23        0
#>  5     5 x1       -4.05        0
#>  6     6 x1       -3.87        0
#>  7     7 x1       -3.69        0
#>  8     8 x1       -3.51        0
#>  9     9 x1       -3.33        0
#> 10    10 x1       -3.15        0
#> # ℹ 397,943 more rows