Learn R Programming

icd (version 3.3)

filter_poa: Filters data frame based on present-on-arrival flag

Description

Present On Arrival (POA) is not a simple flag, since many codes are exempt, unspecified, or unknown. Therefore, two options are given: get all the comorbidities where the POA flag was definitely negative, coded as 'N' or definitely positive and coded as 'Y'. Negating one set won't give the other set unless all codes were either Y or N.

Usage

filter_poa(x, poa_name = "poa", poa = poa_choices)

filter_poa_yes(x, poa_name = "poa")

filter_poa_no(x, poa_name = "poa")

filter_poa_not_no(x, poa_name = "poa")

filter_poa_not_yes(x, poa_name = "poa")

icd_filter_poa(...)

icd_filter_poa_no(...)

icd_filter_poa_not_no(...)

icd_filter_poa_not_yes(...)

icd_filter_poa_yes(...)

Arguments

x

input vector of ICD codes

poa_name

The name of column in the data frame which contains the Present On Arrival (POA) flag. The flag itself is a single character, typically one of "Y", "N", "E", "X", "U" or empty.

poa

single character value, being one of Yes, No, NotYes, and NotNo, indicating whether to account for comorbidities flagged as present-on-arrival. This is not a simple flag, because many codes are exempt, unspecified, or unknown. The intermediate codes, such as "exempt", "unknown" and NA mean that "yes" is not the same as "not no."

...

arguments passed on to other functions

Functions

  • filter_poa_yes: Select rows where Present-on-Arrival flag is explicitly 'Yes.'

  • filter_poa_no: Select rows where Present-on-Arrival flag is explicitly 'No.'

  • filter_poa_not_no: Select rows where Present-on-Arrival flag is anything but 'No.' This includes unknown, exempt, other codes, and of course all those marked 'Yes.'

  • filter_poa_not_yes: Select rows where Present-on-Arrival flag is anything but 'Yes.' This would group exempt, unknown and other codes under 'Not POA' which is unlikely to be a good choice, since exempt codes, of which there are a quite large number, tend to describe chronic or out-of-hospital characteristics.

Deprecated function names

Future versions of icd will drop the icd_ prefix. For example, charlson should be used in favor of icd_charlson. To distinguish icd function calls, consider using the prefix icd:: instead, e.g., icd::charlson. Functions which specifically operate on either ICD-9 or ICD-10 codes or their sub-types will retain the prefix. E.g. icd9_comorbid_ahrq. icd specific classes also retain the prefix, e.g., icd_wide_data.

Examples

Run this code
# NOT RUN {
library(magrittr, warn.conflicts = FALSE, quietly = TRUE)
myData <- data.frame(
  visit_id = c("v1", "v2", "v3", "v4"),
  diag = c("39891", "39790", "41791", "4401"),
  poa = c("Y", "N", NA, "Y"),
  stringsAsFactors = FALSE
)
myData %>% filter_poa_not_no() %>% comorbid_ahrq()
# can fill out named fields also:
myData %>% filter_poa_yes(poa_name="poa") %>%
  comorbid_ahrq(icd_name = "diag", visit_name = "visit_id",
  short_code = TRUE)
# can call the core comorbid() function with an arbitrary mapping
myData %>%
  filter_poa_yes %>%
  comorbid_elix(icd_name = "diag", visit_name = "visit_id",
  short_mapping = TRUE)
# }

Run the code above in your browser using DataLab