View source: R/allCombs_makefuzzy.r

makeFuzzy | R Documentation |

The `makeFuzzy`

function fuzzifies crisp-set data to a customizable degree.

makeFuzzy(x, fuzzvalues = c(0, 0.05, 0.1), ...)

`x` |
Data frame, matrix, or |

`fuzzvalues` |
Numeric vector of values from the interval [0,1]. |

`...` |
Additional arguments are passed to |

In combination with `allCombs`

, `full.ct`

and `selectCases`

, `makeFuzzy`

is useful for simulating fuzzy-set data, which are needed for inverse search trials benchmarking the output of `cna`

. `makeFuzzy`

transforms a data frame or `configTable`

`x`

consisting of crisp-set (binary) factors into a fuzzy-set `configTable`

by adding values selected at random from the argument `fuzzvalues`

to the 0's and subtracting them from the 1's in `x`

. `fuzzvalues`

is a numeric vector of values from the interval [0,1].

`selectCases`

can be used before and `selectCases1`

after the fuzzification to select those configurations that are compatible with a given data generating causal structure (see examples below).

A `configTable`

of type "fs".

`selectCases`

, `allCombs`

, `full.ct`

, `configTable`

, `cna`

, `ct2df`

, `condition`

# Fuzzify a crisp-set (binary) 6x3 matrix with default fuzzvalues. X <- matrix(sample(0:1, 18, replace = TRUE), 6) makeFuzzy(X) # ... and with customized fuzzvalues. makeFuzzy(X, fuzzvalues = 0:5/10) makeFuzzy(X, fuzzvalues = seq(0, 0.45, 0.01)) # First, generate crisp-set data comprising all configurations of 5 binary factors that # are compatible with the causal chain (A*b + a*B <-> C)*(C*d + c*D <-> E) and, # second, fuzzify those crisp-set data. dat1 <- full.ct(5) dat2 <- selectCases("(A*b + a*B <-> C)*(C*d + c*D <-> E)", dat1) (dat3 <- makeFuzzy(dat2, fuzzvalues = seq(0, 0.45, 0.01))) condition("(A*b + a*B <-> C)*(C*d + c*D <-> E)", dat3) # Inverse search for the data generating causal structure A*b + a*B + C*D <-> E from # fuzzy-set data with non-perfect consistency and coverage scores. dat1 <- full.ct(5) set.seed(55) dat2 <- makeFuzzy(dat1, fuzzvalues = 0:4/10) dat3 <- selectCases1("A*b + a*B + C*D <-> E", con = .8, cov = .8, dat2) cna(dat3, outcome = "E", con = .8, cov = .8)

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.