Skip to content

humanpred/formulops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a6092e3 · Jan 22, 2025

History

24 Commits
Jan 22, 2025
Feb 15, 2020
Jan 22, 2025
Jan 22, 2025
Jan 22, 2025
Jan 22, 2025
Jan 22, 2025
Jan 22, 2025
Oct 28, 2018
Feb 15, 2020
Jan 22, 2025
Jan 22, 2025
Jan 22, 2025

Repository files navigation

formulops

CRAN status R-CMD-check Codecov test coverage

The goal of formulops is to assist with formula modification in R treating formulae as standard mathematical operations as used with nlme::nlme() and lme4::nlmer() (for treatment as statistical formula see the Formula package).

Installation

You can install the released version of formulops from CRAN with:

install.packages("formulops")

Example

A few common examples of modifying a formula are given below.

library(formulops)
# Replace a with c in the formula
modify_formula(a~b, find=quote(a), replace=quote(c))
# Replace a with c+d in the formula
modify_formula(a~b, find=quote(a), replace=quote(c+d))
# More complex parts can be replaced, too
modify_formula(a~b/c, find=quote(b/c), replace=quote(d))
# Multiple replacements can occur simultaneously
modify_formula(a~b/c+d, find=list(quote(b/c), quote(d)), replace=list(quote(d), quote(e)))
# Function arguments can be expanded
modify_formula(a~b(c), find=quote(c), replace=quote(formulops_expand(d, e)))

A substituting formula is a simple way to generate a complex formula from several simpler formulae. Parentheses are appropriately added, if required.

foo <- substituting_formula(y~x1+x2, x1~x3*x4, x2~x5/x6+x7)
as.formula(foo)