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

1 |

`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 |

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`

the fuzzy set score of the set described by the formula for each case in the data

1 2 3 | ```
require(QCA)
data(d.urban)
evaluate_dnf(d.urban, "MLC*frb + CP")
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.