evaluate_dnf {QCAtools} | R Documentation |
Evaluate a formula
Description
When given a Boolean formula (see details) and a data.frame
of cases and fuzzy
set score for conditions, computes for each case the score of the membership
in the set described by the formula
Usage
evaluate_dnf(data, formula)
Arguments
data |
A data frame where the rows represent cases and the columns the sets. Column names must be as in the formula. |
formula |
A string, list of strings or function representing a Boolean formula in disjunctive normal form |
Details
If formula
is a function, it must take a data.frame
and return
a vector.
If formula
is a string or list of strings, the following conventions hold:
Set names must be capitalized in the formula and the data; if they are
lowercase, they are interpreted as the negation of the set.
If formula
is a string, logical 'or' is expressed as a '+',
and logical 'and' as a '*'.
If formula
is a list of strings, the strings are assumed to be
the dosjuncts and are concatenated with '+'.
The formula must be in disjunctive normal form, i.e. it must be a disjunction of
conjunctions of elementary or negated elementary sets. Example:
A*b*C + a*B
Value
the fuzzy set score of the set described by the formula for each case in the data
Examples
require(QCA)
data(d.urban)
evaluate_dnf(d.urban, "MLC*frb + CP")