Skip to contents

[Maturing]

Tar inn to logiske vektorer a og b, og gir ut en logisk vektor som elementvis sier om a = TRUE impliserer b = TRUE.

Usage

impl(a, b)

a %impl% b

Arguments

a

Logisk vektor.

b

Logisk vektor som elementvis skal sjekkes mot a.

Value

Logisk vektor som elementvis sier om a = TRUE impliserer b = TRUE.

Details

Funksjonen tar inn to logiske vektorer a og b, sjekker elementvis om a = TRUE impliserer b = TRUE.

Den gir ut en logisk vektor som er TRUE for hvert elementpar fra a og b der a = FALSE, a = NA, eller både a og b = TRUE, og FALSE ellers. Den gir altså ut FALSE for elementpar som motstrider at a = TRUE impliserer b = TRUE.

Funksjonen tilsvarer altså !a | b, men håndterer NA som FALSE.

Hvis a og b har ulik lengde blir den korteste brukt på ny nødvendig antall ganger, likt som for logiske operatorer. Se base::Logic for detaljer.

Functions

  • a %impl% b: impl() som infiks-operator

Examples

library(tibble)

d = tribble(
  ~pas_id, ~bosted_by, ~bosted_bydel,
  1, "Bergen", "Åsane",
  2, "Bergen", "Landås",
  3, "Oslo", "Tjuvholmen",
  4, "Bergen", "Fana",
  5, "Oslo", "Haugenstua"
)

bosted_aasane = d$bosted_bydel == "Åsane"
bosted_bergen = d$bosted_by == "Bergen"

# Sjekk om bosted Åsane impliserer bosted Bergen
impl(bosted_aasane, bosted_bergen)
#> [1] TRUE TRUE TRUE TRUE TRUE

# Eller som infiks-operator
bosted_aasane %impl% bosted_bergen
#> [1] TRUE TRUE TRUE TRUE TRUE