Skip to content

Commit

Permalink
Merge branch 'feat-ropensci' of github.com:alwinw/epocakir into feat-…
Browse files Browse the repository at this point in the history
…ropensci
  • Loading branch information
alwinw committed Oct 29, 2021
2 parents 81ee364 + 7ce678e commit ea8d44b
Showing 1 changed file with 97 additions and 98 deletions.
195 changes: 97 additions & 98 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,51 +30,51 @@ the evidence-based [KDIGO guidelines](https://kdigo.org/guidelines/).
This package covers acute kidney injury (AKI), anemia, and chronic liver
disease(CKD):

- `aki_staging()`: Classification of AKI staging (`aki_stages`) with
- `aki_staging()`: Classification of AKI staging (`aki_stages`) with
automatic selection of:

- `aki_bCr()`: AKI based on baseline creatinine
- `aki_SCr()`: AKI based on changes in serum creatinine
- `aki_UO()`: AKI based on urine output

- `aki_bCr()`: AKI based on baseline creatinine
- `aki_SCr()`: AKI based on changes in serum creatinine
- `aki_UO()`: AKI based on urine output
- `anemia()`: Classification of anemia

- `anemia()`: Classification of anemia

- Classification of albuminuria (`Albuminuria_stages`)

- `Albuminuria_staging_ACR()`: Albuminuria based on Albumin
- Classification of albuminuria (`Albuminuria_stages`)

- `Albuminuria_staging_ACR()`: Albuminuria based on Albumin
excretion rate
- `Albuminuria_staging_AER()`: Albuminuria based on
- `Albuminuria_staging_AER()`: Albuminuria based on
Albumin-to-creatinine ratio

- `eGFR()`: Estimation of glomerular filtration rate with automatic
- `eGFR()`: Estimation of glomerular filtration rate with automatic
selection of:

- `eGFR_adult_SCr()`: eGFR based on the 2009 CKD-EPI creatinine
- `eGFR_adult_SCr()`: eGFR based on the 2009 CKD-EPI creatinine
equation
- `eGFR_adult_SCysC()`: eGFR based on the 2012 CKD-EPI cystatin C
- `eGFR_adult_SCysC()`: eGFR based on the 2012 CKD-EPI cystatin C
equation
- `eGFR_adult_SCr_SCysC()`: eGFR based on the 2012 CKD-EPI
- `eGFR_adult_SCr_SCysC()`: eGFR based on the 2012 CKD-EPI
creatinine-cystatin C equation
- `eGFR_child_SCr()`: eGFR based on the pediatric creatinine-based
- `eGFR_child_SCr()`: eGFR based on the pediatric creatinine-based
equation
- `eGFR_child_SCr_BUN()`: eGFR based on the pediatric
- `eGFR_child_SCr_BUN()`: eGFR based on the pediatric
creatinine-BUN equation
- `eGFR_child_SCysC()`: eGFR based on the pediatric cystatin
- `eGFR_child_SCysC()`: eGFR based on the pediatric cystatin
C-based equation

- `GFR_staging()`: Staging of GFR (`GFR_stages`)

- Multiple utility functions including:
- `GFR_staging()`: Staging of GFR (`GFR_stages`)

- `conversion_factors`: Conversion factors used throughout the
- Multiple utility functions including:

- `conversion_factors`: Conversion factors used throughout the
KDIGO guidelines
- `as_metric()`: Conversion of a measured value into metric units
- `dob2age()`: Calculation of age from a date of birth
- `binary2factor()`: Conversion of binary data into factors based
- `as_metric()`: Conversion of a measured value into metric units
- `dob2age()`: Calculation of age from a date of birth
- `binary2factor()`: Conversion of binary data into factors based
on a column name
- `combine_date_time_cols()`: Combining separate date and time
- `combine_date_time_cols()`: Combining separate date and time
columns into a single date and time column
- `combn_changes`: Generating changes between measurements
- `combn_changes`: Generating changes between measurements

## Installation

Expand Down Expand Up @@ -131,13 +131,13 @@ glimpse(tidy_obvs)
#> Rows: 3
#> Columns: 8
#> $ `Patient Number` <chr> "p10001", "p10002", "p10003"
#> $ `Admission DateTime` <dttm> 2020-03-05 14:01:00, 2020-03-06 09:10:00, 202...
#> $ Discharge_DateTime <dttm> 2020-03-10 16:34:00, 2020-03-16 18:51:00, 202...
#> $ `Admission DateTime` <dttm> 2020-03-05 14:01:00, 2020-03-06 09:10:00, 2020-03…
#> $ Discharge_DateTime <dttm> 2020-03-10 16:34:00, 2020-03-16 18:51:00, 2020-0…
#> $ `Date of Birth` <chr> "1956-01-09", "1997-12-04", "1973-05-28"
#> $ Male <ord> Male, Not_Male, Male
#> $ Height [m] 1.82 [m], 1.61 [m], 1.68 [m]
#> $ Surgery <ord> Not_Surgery, Not_Surgery, Surgery
#> $ Age <Duration> 2076624000s (~65.8 years), 754272000s (~2...
#> $ Age <Duration> 2076624000s (~65.8 years), 754272000s (~23.9 yea…
```

Make sure to use `set_units()` from the `units` package to convert all
Expand All @@ -152,15 +152,15 @@ possible to classify AKI using `aki_bCr()`, `aki_SCr()` or `aki_UO().`

``` r
head(aki_pt_data)
#> # A tibble: 6 x 7
#> SCr_ bCr_ pt_id_ dttm_ UO_ aki_staging_type aki_
#> [mg/dl] [mg/dl] <chr> <dttm> [ml/kg] <chr> <ord>
#> 1 2.0 1.5 <NA> NA NA aki_bCr No AKI
#> 2 2.5 1.5 <NA> NA NA aki_bCr AKI Stag~
#> 3 3.0 1.5 <NA> NA NA aki_bCr AKI Stag~
#> 4 3.5 1.5 <NA> NA NA aki_bCr AKI Stag~
#> 5 4.0 1.5 <NA> NA NA aki_bCr AKI Stag~
#> 6 4.5 1.5 <NA> NA NA aki_bCr AKI Stag~
#> # A tibble: 6 × 7
#> SCr_ bCr_ pt_id_ dttm_ UO_ aki_staging_type aki_
#> [mg/dl] [mg/dl] <chr> <dttm> [ml/kg] <chr> <ord>
#> 1 2 1.5 <NA> NA NA aki_bCr No AKI
#> 2 2.5 1.5 <NA> NA NA aki_bCr AKI Stage 1
#> 3 3 1.5 <NA> NA NA aki_bCr AKI Stage 2
#> 4 3.5 1.5 <NA> NA NA aki_bCr AKI Stage 2
#> 5 4 1.5 <NA> NA NA aki_bCr AKI Stage 3
#> 6 4.5 1.5 <NA> NA NA aki_bCr AKI Stage 3

aki_staging(aki_pt_data,
SCr = "SCr_", bCr = "bCr_", UO = "UO_",
Expand All @@ -179,40 +179,40 @@ aki_pt_data %>%
dttm = dttm_, pt_id = pt_id_
)) %>%
select(pt_id_, SCr_:dttm_, aki)
#> # A tibble: 27 x 5
#> # A tibble: 27 × 5
#> pt_id_ SCr_ bCr_ dttm_ aki
#> <chr> [mg/dl] [mg/dl] <dttm> <ord>
#> 1 <NA> 2.0 1.5 NA No AKI
#> 1 <NA> 2 1.5 NA No AKI
#> 2 <NA> 2.5 1.5 NA AKI Stage 1
#> 3 <NA> 3.0 1.5 NA AKI Stage 2
#> 3 <NA> 3 1.5 NA AKI Stage 2
#> 4 <NA> 3.5 1.5 NA AKI Stage 2
#> 5 <NA> 4.0 1.5 NA AKI Stage 3
#> 5 <NA> 4 1.5 NA AKI Stage 3
#> 6 <NA> 4.5 1.5 NA AKI Stage 3
#> 7 pt1 3.4 NA 2020-10-23 09:00:00 No AKI
#> 8 pt1 3.9 NA 2020-10-25 21:00:00 No AKI
#> 9 pt1 3.0 NA 2020-10-20 09:00:00 AKI Stage 1
#> 10 pt2 3.4 NA 2020-10-18 22:00:00 No AKI
#> # ... with 17 more rows
#> 7 pt1 3.4 NA 2020-10-23 09:00:00 No AKI
#> 8 pt1 3.9 NA 2020-10-25 21:00:00 No AKI
#> 9 pt1 3 NA 2020-10-20 09:00:00 AKI Stage 1
#> 10 pt2 3.4 NA 2020-10-18 22:00:00 No AKI
#> # with 17 more rows

aki_pt_data %>%
mutate(aki = aki_SCr(
SCr = SCr_, dttm = dttm_, pt_id = pt_id_
)) %>%
select(pt_id_, SCr_:dttm_, aki)
#> # A tibble: 27 x 5
#> # A tibble: 27 × 5
#> pt_id_ SCr_ bCr_ dttm_ aki
#> <chr> [mg/dl] [mg/dl] <dttm> <ord>
#> 1 <NA> 2.0 1.5 NA No AKI
#> 1 <NA> 2 1.5 NA No AKI
#> 2 <NA> 2.5 1.5 NA No AKI
#> 3 <NA> 3.0 1.5 NA No AKI
#> 3 <NA> 3 1.5 NA No AKI
#> 4 <NA> 3.5 1.5 NA No AKI
#> 5 <NA> 4.0 1.5 NA No AKI
#> 5 <NA> 4 1.5 NA No AKI
#> 6 <NA> 4.5 1.5 NA No AKI
#> 7 pt1 3.4 NA 2020-10-23 09:00:00 No AKI
#> 8 pt1 3.9 NA 2020-10-25 21:00:00 No AKI
#> 9 pt1 3.0 NA 2020-10-20 09:00:00 AKI Stage 1
#> 10 pt2 3.4 NA 2020-10-18 22:00:00 No AKI
#> # ... with 17 more rows
#> 7 pt1 3.4 NA 2020-10-23 09:00:00 No AKI
#> 8 pt1 3.9 NA 2020-10-25 21:00:00 No AKI
#> 9 pt1 3 NA 2020-10-20 09:00:00 AKI Stage 1
#> 10 pt2 3.4 NA 2020-10-18 22:00:00 No AKI
#> # with 17 more rows
```

Similarly, `eGFR()` offers the ability to automatically select the
Expand All @@ -223,16 +223,15 @@ particular formula is required, then `eGFR_adult_SCr`,

``` r
head(eGFR_pt_data)
#> # A tibble: 6 x 10
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr>
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCy~
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr~
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCy~
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr~
#> # ... with 2 more variables: eGFR_ [mL/1.73m2/min], pediatric_ <lgl>
#> # A tibble: 6 × 10
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_ eGFR_ pediatric_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr> [mL/1.73m2/min] <lgl>
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr 139. FALSE
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCy… 162. FALSE
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr… 167. FALSE
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr 150. FALSE
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCy… 155. FALSE
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr… 171. FALSE

eGFR(eGFR_pt_data,
SCr = "SCr_", SCysC = "SCysC_",
Expand All @@ -256,42 +255,42 @@ eGFR_pt_data %>%
male = male_, black = black_, pediatric = pediatric_
)) %>%
select(SCr_:pediatric_, eGFR)
#> # A tibble: 51 x 11
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr>
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCy~
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr~
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCy~
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr~
#> 7 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr
#> 8 NA 1.2 20 FALSE FALSE NA NA eGFR_adult_SCy~
#> 9 0.5 1.2 20 FALSE FALSE NA NA eGFR_adult_SCr~
#> 10 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr
#> # ... with 41 more rows, and 3 more variables: eGFR_ [mL/1.73m2/min],
#> # pediatric_ <lgl>, eGFR [mL/1.73m2/min]
#> # A tibble: 51 × 11
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_ eGFR_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr> [mL/1.73m2/min]
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr 139.
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCysC 162.
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr_S… 167.
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr 150.
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCysC 155.
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr_S… 171.
#> 7 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr 139.
#> 8 NA 1.2 20 FALSE FALSE NA NA eGFR_adult_SCysC 66.8
#> 9 0.5 1.2 20 FALSE FALSE NA NA eGFR_adult_SCr_S… 96.4
#> 10 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr 150.
#> # with 41 more rows, and 2 more variables: pediatric_ <lgl>,
#> # eGFR [mL/1.73m2/min]

eGFR_pt_data %>%
dplyr::mutate(eGFR = eGFR_adult_SCr(
SCr = SCr_, Age = Age_, male = male_, black = black_
)) %>%
select(SCr_:pediatric_, eGFR)
#> # A tibble: 51 x 11
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr>
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCy~
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr~
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCy~
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr~
#> 7 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr
#> 8 NA 1.2 20 FALSE FALSE NA NA eGFR_adult_SCy~
#> 9 0.5 1.2 20 FALSE FALSE NA NA eGFR_adult_SCr~
#> 10 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr
#> # ... with 41 more rows, and 3 more variables: eGFR_ [mL/1.73m2/min],
#> # pediatric_ <lgl>, eGFR [mL/1.73m2/min]
#> # A tibble: 51 × 11
#> SCr_ SCysC_ Age_ male_ black_ height_ BUN_ eGFR_calc_type_ eGFR_
#> [mg/dl] [mg/L] [years] <lgl> <lgl> [m] [mg/dl] <chr> [mL/1.73m2/min]
#> 1 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr 139.
#> 2 NA 0.4 20 FALSE FALSE NA NA eGFR_adult_SCysC 162.
#> 3 0.5 0.4 20 FALSE FALSE NA NA eGFR_adult_SCr_S… 167.
#> 4 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr 150.
#> 5 NA 0.4 30 FALSE TRUE NA NA eGFR_adult_SCysC 155.
#> 6 0.5 0.4 30 FALSE TRUE NA NA eGFR_adult_SCr_S… 171.
#> 7 0.5 NA 20 FALSE FALSE NA NA eGFR_adult_SCr 139.
#> 8 NA 1.2 20 FALSE FALSE NA NA eGFR_adult_SCysC 66.8
#> 9 0.5 1.2 20 FALSE FALSE NA NA eGFR_adult_SCr_S… 96.4
#> 10 0.5 NA 30 FALSE TRUE NA NA eGFR_adult_SCr 150.
#> # with 41 more rows, and 2 more variables: pediatric_ <lgl>,
#> # eGFR [mL/1.73m2/min]
```

## References
Expand All @@ -309,7 +308,7 @@ commit](https://img.shields.io/github/last-commit/alwinw/epocakir)
bytes](https://img.shields.io/github/repo-size/alwinw/epocakir) ![Total
Lines](https://img.shields.io/tokei/lines/github/alwinw/epocakir)

------------------------------------------------------------------------
-----

See <https://alwinw.github.io/epocakir/reference/index.html> for more
usage details and package reference.

0 comments on commit ea8d44b

Please sign in to comment.