Calculate the size of the elements or sets, using the fuzzy values as probabilities. First it must have active either sets or elements.
Arguments
- object
A TidySet object
- ...
Character vector with the name of elements or sets you want to calculate the size of.
Value
The size of the elements or sets. If there is no active slot or it is the relations slot returns the TidySet object with a warning.
See also
A related concept cardinality()
. It is calculated using
length_set()
.
Examples
rel <- data.frame(
sets = c(rep("A", 5), "B", "C"),
elements = c(letters[seq_len(6)], letters[6])
)
TS <- tidySet(rel)
TS <- activate(TS, "elements")
size(TS)
#> elements size probability
#> 1 a 1 1
#> 2 b 1 1
#> 3 c 1 1
#> 4 d 1 1
#> 5 e 1 1
#> 6 f 2 1
TS <- activate(TS, "sets")
size(TS)
#> sets size probability
#> 1 A 5 1
#> 2 B 1 1
#> 3 C 1 1
# With fuzzy sets
relations <- data.frame(
sets = c(rep("A", 5), "B", "C"),
elements = c(letters[seq_len(6)], letters[6]),
fuzzy = runif(7)
)
TS <- tidySet(relations)
TS <- activate(TS, "elements")
size(TS)
#> elements size probability
#> 1 a 0 0.7635361
#> 2 a 1 0.2364639
#> 3 b 0 0.8858642
#> 4 b 1 0.1141358
#> 5 c 0 0.6450756
#> 6 c 1 0.3549244
#> 7 d 0 0.5716587
#> 8 d 1 0.4283413
#> 9 e 0 0.4640650
#> 10 e 1 0.5359350
#> 11 f 0 0.1283606
#> 12 f 1 0.5100026
#> 13 f 2 0.3616368
TS <- activate(TS, "sets")
size(TS)
#> sets size probability
#> 1 A 0 0.115750530
#> 2 A 1 0.334855733
#> 3 A 2 0.350638104
#> 4 A 3 0.163553090
#> 5 A 4 0.033003546
#> 6 A 5 0.002198997
#> 7 B 0 0.246958953
#> 8 B 1 0.753041047
#> 9 C 0 0.519764780
#> 10 C 1 0.480235220