-
Notifications
You must be signed in to change notification settings - Fork 303
/
muhaz-tidiers.R
58 lines (57 loc) · 1.24 KB
/
muhaz-tidiers.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#' @templateVar class muhaz
#' @template title_desc_tidy
#'
#' @param x A `muhaz` object returned by [muhaz::muhaz()].
#' @template param_unused_dots
#'
#' @evalRd return_tidy(
#' "time",
#' estimate = "Estimated hazard rate."
#' )
#'
#' @examplesIf rlang::is_installed(c("muhaz", "survival"))
#'
#' # load libraries for models and data
#' library(muhaz)
#' library(survival)
#'
#' # fit model
#' x <- muhaz(ovarian$futime, ovarian$fustat)
#'
#' # summarize model fit with tidiers
#' tidy(x)
#' glance(x)
#'
#' @aliases muhaz_tidiers
#' @export
#' @seealso [tidy()], [muhaz::muhaz()]
#' @family muhaz tidiers
tidy.muhaz <- function(x, ...) {
bind_cols(x[c("est.grid", "haz.est")]) %>%
rename("time" = "est.grid", "estimate" = "haz.est") %>%
as_tibble()
}
#' @templateVar class muhaz
#' @template title_desc_glance
#'
#' @inherit tidy.muhaz params examples
#'
#' @evalRd return_glance(
#' "nobs",
#' "min.time",
#' "max.time",
#' "min.hazard",
#' "max.hazard"
#' )
#'
#' @export
#' @seealso [glance()], [muhaz::muhaz()]
#' @family muhaz tidiers
glance.muhaz <- function(x, ...) {
bind_cols(x$pin[c("nobs", "min.time", "max.time")]) %>%
mutate(
min.hazard = min(x$haz.est),
max.hazard = max(x$haz.est)
) %>%
as_tibble()
}