Learn R Programming

nmw (version 0.3.0)

nm_to_molar: Convert NM Dataset from Mass to Molar Units

Description

Convert AMT/RATE/DV columns of a NM data.frame from mass units to molar units.

Usage

nm_to_molar(
  df,
  mw_dose,
  mw_dv = mw_dose,
  amt_cols = c("AMT", "RATE"),
  dv_col = "DV",
  cmt_col = "CMT",
  dose_factor = 1000,
  dv_factor = 1
)

Value

data.frame with converted columns; other columns unchanged.

Arguments

df

data.frame.

mw_dose

numeric scalar. MW for AMT and RATE columns.

mw_dv

numeric scalar OR named numeric. Scalar: applied to all DV regardless of CMT. Named: names are CMT values; rows whose CMT is not in names() are left unchanged. Default = mw_dose.

amt_cols

columns to convert with mw_dose. Default c("AMT", "RATE").

dv_col

DV column. Default "DV".

cmt_col

CMT column. Default "CMT".

dose_factor

multiplier applied after AMT/RATE divided by mw_dose. 1000 = mg -> umol (default).

dv_factor

multiplier applied after DV divided by mw_dv. 1 = ng/mL -> umol/L (default).

Details

Typical use:

  • AMT, RATE in mg, DV in ng/mL, MW in g/mol

  • mg / MW * 1000 -> umol

  • ng/mL / MW -> umol/L

For multiple analytes (e.g., parent at CMT=1 and metabolite at CMT=3), supply mw_dv as a named numeric vector with names equal to the CMT values (as character): c(`1` = 394.47, `3` = 380.47).