derive_vars_transposed: Derive Variables by Transposing and Merging a Second Dataset

Description Usage Arguments Details Value Author(s) Examples

View source: R/derive_vars_transposed.R

Description

Adds variables from a vertical dataset after transposing it into a wide one.

Usage

1
2
3
4
5
6
7
8
derive_vars_transposed(
  dataset,
  dataset_merge,
  by_vars,
  key_var,
  value_var,
  filter = NULL
)

Arguments

dataset

Input dataset

The variables specified by the by_vars parameter are required

dataset_merge

Dataset to transpose and merge

The variables specified by the by_vars, key_var and value_var parameters are expected

by_vars

Keys used to merge dataset_merge with dataset

key_var

The variable of dataset_merge containing the names of the transposed variables

value_var

The variable of dataset_merge containing the values of the transposed variables

filter

Expression used to restrict the records of dataset_merge prior to transposing

Details

After filtering dataset_merge based upon the condition provided in filter, this dataset is transposed and subsequently merged onto dataset using by_vars as keys.

Value

The input dataset with transposed variables from dataset_merge added

Author(s)

Thomas Neitmann

Examples

 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
library(dplyr, warn.conflicts = FALSE)

cm <- tibble::tribble(
        ~USUBJID, ~CMGRPID,  ~CMREFID,            ~CMDECOD,
  "BP40257-1001",     "14", "1192056",       "PARACETAMOL",
  "BP40257-1001",     "18", "2007001",        "SOLUMEDROL",
  "BP40257-1002",     "19", "2791596",    "SPIRONOLACTONE"
)
facm <- tibble::tribble(
        ~USUBJID, ~FAGRPID,  ~FAREFID,   ~FATESTCD, ~FASTRESC,
  "BP40257-1001",      "1", "1192056",  "CMATC1CD",       "N",
  "BP40257-1001",      "1", "1192056",  "CMATC2CD",     "N02",
  "BP40257-1001",      "1", "1192056",  "CMATC3CD",    "N02B",
  "BP40257-1001",      "1", "1192056",  "CMATC4CD",   "N02BE",

  "BP40257-1001",      "1", "2007001",  "CMATC1CD",       "D",
  "BP40257-1001",      "1", "2007001",  "CMATC2CD",     "D10",
  "BP40257-1001",      "1", "2007001",  "CMATC3CD",    "D10A",
  "BP40257-1001",      "1", "2007001",  "CMATC4CD",   "D10AA",
  "BP40257-1001",      "2", "2007001",  "CMATC1CD",       "D",
  "BP40257-1001",      "2", "2007001",  "CMATC2CD",     "D07",
  "BP40257-1001",      "2", "2007001",  "CMATC3CD",    "D07A",
  "BP40257-1001",      "2", "2007001",  "CMATC4CD",   "D07AA",
  "BP40257-1001",      "3", "2007001",  "CMATC1CD",       "H",
  "BP40257-1001",      "3", "2007001",  "CMATC2CD",     "H02",
  "BP40257-1001",      "3", "2007001",  "CMATC3CD",    "H02A",
  "BP40257-1001",      "3", "2007001",  "CMATC4CD",   "H02AB",

  "BP40257-1002",      "1", "2791596",  "CMATC1CD",       "C",
  "BP40257-1002",      "1", "2791596",  "CMATC2CD",     "C03",
  "BP40257-1002",      "1", "2791596",  "CMATC3CD",    "C03D",
  "BP40257-1002",      "1", "2791596",  "CMATC4CD",   "C03DA"
)

cm %>%
  derive_vars_transposed(
    facm,
    by_vars = vars(USUBJID, CMREFID = FAREFID),
    key_var = FATESTCD,
    value_var = FASTRESC
  ) %>%
  select(USUBJID, CMDECOD, starts_with("CMATC"))

epijim/admiral documentation built on Feb. 13, 2022, 12:15 a.m.