tests/testthat/helper-fixtures.R

# Shared fixtures for fit-measure regression tests (bugs A / B / report / chart).
# Embedded verbatim so tests are deterministic across platforms and RNG versions.

# Fuzzy data (4 conditions, n = 45): the complex solution has several minimal
# solutions and overall covS (0.9057) != individual[[1]] covS (0.8910).
.multisol_fuzzy_data <- function() {
  structure(list(
    A = c(0.281, 0.568, 0.222, 0.916, 0.621, 0.226, 0.675, 0.752, 0.703,
          0.387, 0.906, 0.642, 0.283, 0.035, 0.844, 0.483, 0.494, 0.805,
          0.774, 0.709, 0.799, 0.764, 0.528, 0.048, 0.717, 0.479, 0.442,
          0.099, 0.328, 0.652, 0.885, 0.462, 0.641, 0.48, 0.112, 0.349,
          0.356, 0.478, 0.839, 0.759, 0.439, 0.406, 0.74, 0.697, 0.262),
    B = c(0.257, 0.633, 0.76, 0.458, 0.789, 0.645, 0.285, 0.625, 0.155,
          0.896, 0.951, 0.366, 0.173, 0.702, 0.45, 0.973, 0.485, 0.738,
          0.51, 0.247, 0.57, 0.063, 0.9, 0.557, 0.963, 0.671, 0.256,
          0.714, 0.198, 0.132, 0.608, 0.34, 0.5, 0.528, 0.292, 0.299,
          0.449, 0.854, 0.092, 0.709, 0.622, 0.831, 0.388, 0.635, 0.599),
    C = c(0.307, 0.86, 0.851, 0.741, 0.915, 0.698, 0.128, 0.297, 0.137,
          0.33, 0.283, 0.516, 0.203, 0.559, 0.273, 0.934, 0.746, 0.797,
          0.64, 0.926, 0.278, 0.333, 0.896, 0.274, 0.423, 0.357, 0.382,
          0.397, 0.677, 0.434, 0.319, 0.882, 0.42, 0.433, 0.462, 0.744,
          0.472, 0.486, 0.265, 0.381, 0.523, 0.292, 0.689, 0.093, 0.613),
    D = c(0.091, 0.389, 0.312, 0.273, 0.479, 0.054, 0.854, 0.076, 0.333,
          0.158, 0.245, 0.958, 0.507, 0.127, 0.079, 0.663, 0.493, 0.383,
          0.199, 0.097, 0.166, 0.818, 0.283, 0.111, 0.943, 0.654, 0.411,
          0.83, 0.791, 0.283, 0.965, 0.406, 0.106, 0.446, 0.577, 0.97,
          0.54, 0.665, 0.471, 0.377, 0.487, 0.765, 0.957, 0.824, 0.86),
    Y = c(0.059, 0.844, 0.495, 0.45, 0.848, 0.319, 0.857, 0.546, 0.312,
          0.42, 0.946, 0.648, 0.082, 0.332, 0.413, 0.605, 0.843, 0.595,
          0.805, 0.398, 0.84, 0.819, 0.959, 0.094, 0.39, 0.966, 0.509,
          0.405, 0.212, 0.519, 0.816, 0.505, 0.488, 0.162, 0.317, 0.708,
          0.283, 0.349, 0.682, 0.783, 0.121, 0.641, 0.44, 0.627, 0.127)),
    row.names = c(NA, -45L), class = "data.frame")
}

# Fuzzy data (5 conditions, n = 60): include = "?" with dir.exp = rep(1, 5) gives
# an intermediate solution whose fit (covS 0.9322) differs from the parsimonious
# fit (covS 0.9443).
.intermediate_fuzzy_data <- function() {
  structure(list(
    A = c(0.304, 0.509, 0.107, 0.129, 0.839, 0.213, 0.864, 0.706, 0.484,
          0.197, 0.239, 0.38, 0.104, 0.411, 0.167, 0.504, 0.423, 0.776,
          0.304, 0.285, 0.278, 0.494, 0.35, 0.621, 0.526, 0.503, 0.435,
          0.255, 0.423, 0.201, 0.176, 0.212, 0.721, 0.099, 0.228, 0.663,
          0.435, 0.897, 0.298, 0.381, 0.092, 0.507, 0.777, 0.228, 0.777,
          0.382, 0.045, 0.774, 0.734, 0.576, 0.751, 0.42, 0.241, 0.668,
          0.555, 0.681, 0.445, 0.649, 0.889, 0.521),
    B = c(0.234, 0.964, 0.458, 0.061, 0.68, 0.915, 0.248, 0.182, 0.299,
          0.742, 0.654, 0.457, 0.256, 0.579, 0.827, 0.555, 0.276, 0.653,
          0.183, 0.637, 0.477, 0.609, 0.3, 0.219, 0.96, 0.301, 0.14, 0.67,
          0.232, 0.108, 0.843, 0.192, 0.788, 0.319, 0.672, 0.379, 0.865,
          0.169, 0.879, 0.301, 0.35, 0.584, 0.698, 0.458, 0.052, 0.694,
          0.665, 0.196, 0.855, 0.828, 0.765, 0.906, 0.652, 0.038, 0.472,
          0.325, 0.358, 0.605, 0.489, 0.537),
    C = c(0.969, 0.29, 0.845, 0.73, 0.43, 0.878, 0.859, 0.694, 0.857,
          0.227, 0.452, 0.158, 0.613, 0.18, 0.326, 0.473, 0.38, 0.041,
          0.401, 0.597, 0.102, 0.682, 0.104, 0.399, 0.461, 0.59, 0.633,
          0.944, 0.389, 0.63, 0.097, 0.719, 0.645, 0.724, 0.2, 0.765,
          0.915, 0.902, 0.255, 0.403, 0.502, 0.312, 0.694, 0.537, 0.138,
          0.466, 0.121, 0.412, 0.511, 0.488, 0.673, 0.614, 0.789, 0.607,
          0.179, 0.816, 0.2, 0.833, 0.775, 0.836),
    D = c(0.466, 0.467, 0.719, 0.266, 0.96, 0.408, 0.368, 0.447, 0.327,
          0.618, 0.489, 0.332, 0.772, 0.526, 0.641, 0.98, 0.917, 0.151,
          0.561, 0.798, 0.715, 0.91, 0.147, 0.774, 0.739, 0.503, 0.376,
          0.323, 0.188, 0.144, 0.736, 0.721, 0.235, 0.332, 0.88, 0.338,
          0.254, 0.788, 0.195, 0.445, 0.548, 0.625, 0.625, 0.357, 0.221,
          0.491, 0.509, 0.687, 0.092, 0.294, 0.795, 0.515, 0.054, 0.599,
          0.067, 0.447, 0.453, 0.873, 0.194, 0.756),
    E = c(0.792, 0.71, 0.925, 0.838, 0.882, 0.138, 0.491, 0.665, 0.086,
          0.238, 0.417, 0.491, 0.779, 0.881, 0.521, 0.317, 0.759, 0.349,
          0.376, 0.444, 0.623, 0.043, 0.46, 0.153, 0.158, 0.708, 0.085,
          0.579, 0.393, 0.847, 0.285, 0.388, 0.976, 0.764, 0.245, 0.445,
          0.19, 0.121, 0.781, 0.302, 0.366, 0.193, 0.443, 0.511, 0.5,
          0.868, 0.09, 0.908, 0.663, 0.091, 0.189, 0.528, 0.554, 0.71,
          0.544, 0.9, 0.567, 0.346, 0.241, 0.604),
    Y = c(0.044, 0.684, 0.082, 0.461, 0.981, 0.786, 0.693, 0.262, 0.775,
          0.545, 0.089, 0.428, 0.055, 0.334, 0.759, 0.439, 0.346, 0.875,
          0.152, 0.506, 0.433, 0.294, 0.11, 0.334, 0.862, 0.143, 0.213,
          0.773, 0.335, 0.134, 0.226, 0.081, 0.183, 0.169, 0.422, 0.729,
          0.193, 0.214, 0.958, 0.03, 0.025, 0.725, 0.858, 0.166, 0.624,
          0.374, 0.038, 0.319, 0.824, 0.706, 0.833, 0.668, 0.659, 0.235,
          0.393, 0.663, 0.593, 0.711, 0.695, 0.635)),
    row.names = c(NA, -60L), class = "data.frame")
}

# Hand computation of solution coverage from a character solution (product terms).
.hand_covS <- function(terms, qd, y) {
  eval_term <- function(term) {
    parts <- strsplit(term, "\\*")[[1]]
    vals <- sapply(parts, function(p) {
      if (startsWith(p, "~")) 1 - qd[[substring(p, 2)]] else qd[[p]]
    })
    apply(as.matrix(vals), 1, min)
  }
  tm <- sapply(terms, eval_term)
  X <- apply(as.matrix(tm), 1, max)
  sum(pmin(X, y)) / sum(y)
}

# Constructed data (3 conditions, n = 22) with a single positive configuration
# (111) and negative corners, so include = "?" with dir.exp = rep(1, 3) gives
# a parsimonious 3-way tie (A*B, A*C, B*C) but an intermediate solution A*B*C.
# The intermediate fit (inclS/covS) therefore differs from the parsimonious
# aggregate, which makes it a clean end-to-end probe for generate_report().
.intermediate_construct_data <- function() {
  structure(list(
    A = c(0.949, 0.975, 0.923, 0.962, 0.939, 0.953, 0.922, 0.927, 0.978,
          0.972, 0.079, 0.029, 0.076, 0.022, 0.066, 0.026, 0.041, 0.026,
          0.048, 0.043, 0.035, 0.054),
    B = c(0.961, 0.95, 0.931, 0.972, 0.943, 0.93, 0.03, 0.021, 0.042,
          0.029, 0.923, 0.96, 0.955, 0.944, 0.05, 0.023, 0.063, 0.028,
          0.033, 0.059, 0.078, 0.053),
    C = c(0.959, 0.936, 0.949, 0.96, 0.935, 0.933, 0.072, 0.054, 0.063,
          0.045, 0.034, 0.033, 0.046, 0.077, 0.943, 0.963, 0.925, 0.971,
          0.061, 0.052, 0.047, 0.044),
    Y = c(8, 8, 8, 8, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2)),
    row.names = c(NA, -22L), class = "data.frame")
}

# Real-world fixture (n = 336): SPV/PRD/DLV/COM -> INT (brand survey data).
# At thrY = 9, DLV = 8 (SPV = PRD = COM = 7, incl.cut = 0.85), with
# include = "?" and dir.exp = c(1,1,1,"-"), QCA::minimize() returns an
# intermediate solution spanning TWO prime implicant charts ("From C1P1,
# C2P1:" in print()), not just multiple parsimonious paths within one chart
# ("C1P1, C1P2"). This is the reproduction case for the get_n_solutions() /
# generate_report() double-counting bug fixed via collect_unique_i_sol().
.multichart_brand_data <- function() {
  structure(list(INT = c(4, 9, 6, 7, 4, 8, 6, 10, 5, 6, 8, 5, 10, 
0, 7, 8, 6, 7, 10, 5, 10, 5, 10, 5, 10, 5, 8, 9, 6, 10, 10, 6, 
7, 0, 8, 10, 10, 3, 5, 6, 7, 5, 9, 7, 10, 8, 10, 10, 10, 10, 
8, 10, 5, 7, 8, 6, 8, 10, 10, 7, 10, 7, 6, 9, 8, 5, 10, 9, 10, 
5, 6, 0, 7, 10, 10, 10, 7, 10, 4, 8, 7, 5, 6, 5, 4, 0, 10, 10, 
5, 9, 0, 5, 5, 7, 10, 10, 5, 6, 7, 7, 7, 9, 10, 7, 9, 4, 10, 
8, 5, 6, 10, 7, 4, 10, 10, 10, 9, 6, 9, 0, 6, 8, 5, 9, 6, 7, 
5, 7, 7, 4, 4, 6, 6, 9, 9, 7, 6, 6, 10, 8, 6, 9, 10, 7, 10, 6, 
9, 5, 5, 10, 8, 5, 6, 10, 10, 5, 5, 7, 9, 5, 5, 9, 7, 10, 6, 
6, 6, 10, 10, 7, 10, 7, 8, 6, 7, 4, 10, 0, 5, 8, 10, 3, 10, 10, 
8, 7, 10, 10, 8, 6, 7, 4, 7, 7, 10, 2, 6, 7, 6, 4, 10, 9, 6, 
6, 8, 1, 0, 7, 9, 7, 10, 6, 9, 10, 8, 7, 8, 10, 7, 10, 7, 5, 
10, 6, 5, 7, 10, 7, 7, 7, 5, 4, 7, 10, 10, 9, 8, 9, 5, 3, 7, 
7, 7, 2, 0, 9, 8, 9, 10, 6, 10, 5, 10, 8, 10, 7, 8, 9, 10, 9, 
10, 4, 7, 10, 5, 9, 8, 6, 4, 8, 9, 10, 8, 9, 8, 8, 9, 7, 10, 
6, 5, 10, 9, 10, 9, 8, 7, 8, 3, 8, 3, 10, 9, 10, 2, 5, 9, 6, 
9, 0, 10, 10, 8, 5, 9, 8, 0, 9, 9, 9, 10, 9, 4, 5, 6, 3, 0, 5, 
7, 7, 0, 7, 5, 1, 8, 5, 0, 8, 5, 5, 8, 10, 5, 0, 8, 5), SPV = c(4.33333333333333, 
9, 5.66666666666667, 6, 5, 7, 5.66666666666667, 9.66666666666667, 
6.33333333333333, 7.66666666666667, 7.66666666666667, 2.66666666666667, 
10, 0.333333333333333, 5.33333333333333, 7.66666666666667, 7, 
8, 8.33333333333333, 3.33333333333333, 9.66666666666667, 4, 9, 
5, 8.66666666666667, 5, 6, 9, 6.66666666666667, 10, 7.66666666666667, 
5, 3, 3, 3.66666666666667, 9.33333333333333, 10, 10, 6.33333333333333, 
3, 5.66666666666667, 5, 6.66666666666667, 7, 8.66666666666667, 
6, 10, 7.66666666666667, 6, 6.66666666666667, 6.66666666666667, 
7.66666666666667, 5, 6.66666666666667, 3.66666666666667, 5, 7.66666666666667, 
6.33333333333333, 8.66666666666667, 5.66666666666667, 8.33333333333333, 
5, 6, 8.33333333333333, 6.33333333333333, 5, 10, 6.66666666666667, 
10, 5, 5.33333333333333, 2.33333333333333, 9, 9.33333333333333, 
5, 9.33333333333333, 7.66666666666667, 6.66666666666667, 1, 8.66666666666667, 
6.66666666666667, 6, 6.33333333333333, 1.33333333333333, 7, 5, 
7, 6.33333333333333, 5, 5.66666666666667, 0, 8.66666666666667, 
4, 2.66666666666667, 8.33333333333333, 7, 5.33333333333333, 5, 
5.33333333333333, 7.66666666666667, 6.33333333333333, 8, 10, 
6.66666666666667, 7.33333333333333, 4.33333333333333, 8, 7.66666666666667, 
5.33333333333333, 4.66666666666667, 5, 3.66666666666667, 3, 5.66666666666667, 
9, 9.66666666666667, 2.66666666666667, 3, 8, 3.33333333333333, 
8.33333333333333, 7.66666666666667, 3, 9, 5, 5.66666666666667, 
6, 8, 1.66666666666667, 4.66666666666667, 5, 6.66666666666667, 
6, 8, 8, 7, 4.66666666666667, 5, 6, 5, 5.33333333333333, 7, 10, 
6, 10, 8.33333333333333, 7.33333333333333, 5.66666666666667, 
8, 9, 6.66666666666667, 5, 5.33333333333333, 10, 10, 4, 7.33333333333333, 
6.66666666666667, 8, 4.66666666666667, 5.33333333333333, 4, 4.66666666666667, 
8.66666666666667, 6, 3.33333333333333, 6.33333333333333, 10, 
10, 7.33333333333333, 10, 6.33333333333333, 7.66666666666667, 
7.33333333333333, 3.66666666666667, 9.33333333333333, 6.66666666666667, 
4, 5, 5, 9.33333333333333, 3.66666666666667, 7.66666666666667, 
8.66666666666667, 6, 5.66666666666667, 7, 9, 8.33333333333333, 
5.66666666666667, 5.33333333333333, 6, 5.33333333333333, 5, 4.66666666666667, 
4.66666666666667, 5.66666666666667, 6.66666666666667, 10, 5.33333333333333, 
10, 8, 6.33333333333333, 5.33333333333333, 4.33333333333333, 
0, 1.66666666666667, 4.66666666666667, 8.66666666666667, 7.66666666666667, 
7.66666666666667, 4.66666666666667, 9, 10, 8, 5, 8, 5.33333333333333, 
7, 7.33333333333333, 5, 5.66666666666667, 7, 7.33333333333333, 
4, 6.66666666666667, 7.33333333333333, 6.66666666666667, 5.66666666666667, 
2.66666666666667, 5, 6, 5.33333333333333, 5.33333333333333, 6.66666666666667, 
3.66666666666667, 7, 6.33333333333333, 4.66666666666667, 6, 6.33333333333333, 
7.33333333333333, 9, 5, 3, 8, 4.66666666666667, 9.33333333333333, 
6.66666666666667, 4, 8.33333333333333, 4.33333333333333, 10, 
7, 7.33333333333333, 7.33333333333333, 7, 4.33333333333333, 10, 
7.66666666666667, 0, 4.66666666666667, 6.33333333333333, 9.33333333333333, 
0, 6.66666666666667, 7.33333333333333, 4, 2, 7.33333333333333, 
8.66666666666667, 10, 4.33333333333333, 8.33333333333333, 7.66666666666667, 
3, 5.66666666666667, 6.33333333333333, 7, 5, 3, 9.33333333333333, 
10, 10, 7.66666666666667, 8, 8, 8, 7, 7.66666666666667, 3.33333333333333, 
8.33333333333333, 6.33333333333333, 8, 10, 5, 8, 5, 8.33333333333333, 
0, 10, 7, 6.33333333333333, 2.33333333333333, 2.33333333333333, 
6.66666666666667, 0, 4, 5.66666666666667, 6.66666666666667, 6.66666666666667, 
8, 2, 4, 6.33333333333333, 5, 5, 1.66666666666667, 5.66666666666667, 
8.66666666666667, 5, 7.33333333333333, 5.66666666666667, 5, 7.33333333333333, 
5, 5, 7.66666666666667, 4.33333333333333, 5.66666666666667, 6.33333333333333, 
8.33333333333333, 5.33333333333333, 0, 5.66666666666667, 5.33333333333333
), PRD = c(6.66666666666667, 9, 5.33333333333333, 6, 4, 7.33333333333333, 
5.66666666666667, 10, 5, 7.33333333333333, 6, 4.66666666666667, 
10, 1.66666666666667, 7, 7, 7.66666666666667, 8.33333333333333, 
9, 2.66666666666667, 8.33333333333333, 4.66666666666667, 8, 4.66666666666667, 
9.66666666666667, 5, 5, 9, 7.33333333333333, 10, 9, 6.33333333333333, 
3, 8.33333333333333, 7.33333333333333, 9.33333333333333, 9.66666666666667, 
8.33333333333333, 6.66666666666667, 4.33333333333333, 4.66666666666667, 
4.66666666666667, 4.33333333333333, 7.33333333333333, 9.66666666666667, 
5.33333333333333, 10, 10, 6, 10, 7, 8.33333333333333, 5, 6.33333333333333, 
5.33333333333333, 5.33333333333333, 7.66666666666667, 8.33333333333333, 
10, 6.33333333333333, 9, 7.66666666666667, 6.33333333333333, 
7, 7, 6.66666666666667, 10, 6.66666666666667, 10, 5, 5.66666666666667, 
1, 8.33333333333333, 9, 3.66666666666667, 9.66666666666667, 7.66666666666667, 
8, 6.66666666666667, 9, 7.66666666666667, 6, 8, 1.33333333333333, 
6, 7.66666666666667, 7.33333333333333, 9, 5, 8.66666666666667, 
0, 8.66666666666667, 4.66666666666667, 5, 8.33333333333333, 8.33333333333333, 
5, 5, 6.33333333333333, 8, 5.33333333333333, 8, 10, 7.33333333333333, 
7.33333333333333, 3, 7.33333333333333, 6.33333333333333, 3, 6.66666666666667, 
7.33333333333333, 3.66666666666667, 3.33333333333333, 6.33333333333333, 
9.33333333333333, 10, 6, 5, 5.66666666666667, 5, 8.66666666666667, 
7, 6.66666666666667, 9.33333333333333, 5, 4.33333333333333, 8, 
6.33333333333333, 6.66666666666667, 4.66666666666667, 4, 7, 6, 
8.66666666666667, 8.66666666666667, 6.66666666666667, 4, 7, 8.33333333333333, 
5, 7.66666666666667, 8, 10, 7, 10, 5.66666666666667, 7.33333333333333, 
5, 6.66666666666667, 10, 6.33333333333333, 5, 7.66666666666667, 
10, 10, 3.33333333333333, 3.66666666666667, 5.66666666666667, 
6.66666666666667, 5, 8, 8.33333333333333, 5, 7.66666666666667, 
6, 8, 6.66666666666667, 10, 10, 7, 10, 6.33333333333333, 8, 6.33333333333333, 
5.33333333333333, 4, 6.33333333333333, 2.33333333333333, 5, 5, 
8.33333333333333, 6.66666666666667, 6.33333333333333, 9.33333333333333, 
4.66666666666667, 6.66666666666667, 7.33333333333333, 9.33333333333333, 
8, 6.66666666666667, 6, 2.66666666666667, 6.66666666666667, 6.33333333333333, 
7.33333333333333, 3.33333333333333, 6.33333333333333, 6.33333333333333, 
10, 3.66666666666667, 10, 7.33333333333333, 3.66666666666667, 
4.66666666666667, 6.33333333333333, 6.66666666666667, 6.66666666666667, 
3.33333333333333, 9, 8, 7.33333333333333, 5, 9.33333333333333, 
10, 8.33333333333333, 5, 6, 5.66666666666667, 6.33333333333333, 
8, 5.33333333333333, 5, 9, 7, 5.66666666666667, 6.66666666666667, 
8, 6.66666666666667, 7.33333333333333, 6, 5, 4.33333333333333, 
6.66666666666667, 6.66666666666667, 8, 8, 6, 5.66666666666667, 
4, 3.66666666666667, 6.66666666666667, 7.66666666666667, 8.33333333333333, 
8, 4.33333333333333, 7.33333333333333, 4, 9.33333333333333, 8, 
6, 8.33333333333333, 4.66666666666667, 9.33333333333333, 6.33333333333333, 
7, 7.33333333333333, 7.66666666666667, 5.33333333333333, 10, 
8.66666666666667, 7.66666666666667, 6.33333333333333, 5.66666666666667, 
7.66666666666667, 3, 7, 8, 6.33333333333333, 3.33333333333333, 
8, 9.33333333333333, 10, 6, 7.33333333333333, 7.66666666666667, 
5.33333333333333, 7, 7.66666666666667, 9.33333333333333, 4.66666666666667, 
5, 10, 9.66666666666667, 10, 8.33333333333333, 8, 8, 7.66666666666667, 
4, 7, 5, 9.33333333333333, 2.66666666666667, 7.33333333333333, 
6.66666666666667, 5, 7.66666666666667, 5, 7.33333333333333, 0, 
10, 5, 7.33333333333333, 1.66666666666667, 6, 7, 0, 3.33333333333333, 
6, 7, 6.66666666666667, 8.33333333333333, 3.66666666666667, 4.33333333333333, 
5.66666666666667, 5.33333333333333, 3.33333333333333, 6.66666666666667, 
5.66666666666667, 8, 5, 7.33333333333333, 7, 4.33333333333333, 
7.33333333333333, 5, 3.33333333333333, 7, 5, 5.33333333333333, 
5.33333333333333, 10, 3.66666666666667, 6, 6.33333333333333, 
5), DLV = c(5, 8.66666666666667, 5.33333333333333, 6, 4.33333333333333, 
7.33333333333333, 5.33333333333333, 8.66666666666667, 5.33333333333333, 
7.66666666666667, 5, 3.33333333333333, 10, 0.333333333333333, 
4.33333333333333, 7.66666666666667, 7.66666666666667, 8, 9, 3.33333333333333, 
9, 3.66666666666667, 7, 5, 9.33333333333333, 5, 5.66666666666667, 
9, 5.33333333333333, 10, 7.33333333333333, 3.66666666666667, 
2.66666666666667, 3.66666666666667, 8.66666666666667, 9.66666666666667, 
9.33333333333333, 3.33333333333333, 6.66666666666667, 3.33333333333333, 
4.66666666666667, 5, 4.33333333333333, 7.33333333333333, 7.66666666666667, 
5, 10, 10, 6.66666666666667, 10, 2.66666666666667, 8, 5, 6.66666666666667, 
5.33333333333333, 5, 8, 6.33333333333333, 9, 5, 6, 6, 6.66666666666667, 
7, 6, 5.33333333333333, 10, 5.66666666666667, 10, 5, 5.66666666666667, 
1, 8.33333333333333, 7, 4, 9.66666666666667, 8, 6, 3, 10, 5.66666666666667, 
6, 5.33333333333333, 0.333333333333333, 6, 3, 6.33333333333333, 
5, 5, 6.33333333333333, 0, 5.66666666666667, 5.66666666666667, 
7, 7.66666666666667, 8.66666666666667, 5, 5, 6, 6.33333333333333, 
5, 8, 10, 6, 6.66666666666667, 6, 7.66666666666667, 5.33333333333333, 
3.66666666666667, 5.33333333333333, 4.33333333333333, 3.66666666666667, 
2.66666666666667, 5.66666666666667, 8.66666666666667, 10, 3.66666666666667, 
4, 4, 0, 8, 7.66666666666667, 3.66666666666667, 9.33333333333333, 
4.66666666666667, 4.33333333333333, 6.33333333333333, 7.33333333333333, 
5, 3.33333333333333, 5.33333333333333, 6.66666666666667, 6.33333333333333, 
7, 7.66666666666667, 6, 4.66666666666667, 5, 6, 5.66666666666667, 
2, 5, 10, 6.66666666666667, 10, 3.66666666666667, 7.33333333333333, 
5.66666666666667, 6.66666666666667, 10, 4, 5, 5.66666666666667, 
10, 10, 3, 4.66666666666667, 5.33333333333333, 8.33333333333333, 
4, 4.66666666666667, 7.66666666666667, 5.33333333333333, 6.66666666666667, 
6, 3.33333333333333, 7.33333333333333, 9, 10, 6.33333333333333, 
10, 7, 8, 7, 4.33333333333333, 5, 6.33333333333333, 7.66666666666667, 
5, 4, 9.66666666666667, 1.66666666666667, 8.33333333333333, 9.33333333333333, 
4.33333333333333, 7, 6.33333333333333, 9.33333333333333, 8, 6.33333333333333, 
5, 7, 4, 4.66666666666667, 6, 5.33333333333333, 6, 6.33333333333333, 
10, 5.66666666666667, 10, 8.33333333333333, 5, 3, 6, 1.66666666666667, 
1.66666666666667, 2.33333333333333, 9, 7.66666666666667, 7.66666666666667, 
4.33333333333333, 8.33333333333333, 10, 8.33333333333333, 5, 
7, 7.33333333333333, 6.66666666666667, 7.33333333333333, 5.33333333333333, 
5.33333333333333, 10, 7.33333333333333, 5.66666666666667, 6.66666666666667, 
9.33333333333333, 7, 5.66666666666667, 4, 5, 5, 5, 7, 6, 6, 1.66666666666667, 
6.66666666666667, 5.66666666666667, 3, 7, 7.66666666666667, 7.66666666666667, 
4.33333333333333, 3.66666666666667, 5.66666666666667, 4, 8.66666666666667, 
6.33333333333333, 5, 10, 4.66666666666667, 8, 7, 7, 7.33333333333333, 
7.66666666666667, 4.66666666666667, 10, 8, 3.33333333333333, 
3.33333333333333, 5, 8.33333333333333, 2, 5.33333333333333, 6.33333333333333, 
5.33333333333333, 2, 7.66666666666667, 8.66666666666667, 9.33333333333333, 
5.66666666666667, 9, 6.66666666666667, 4, 6.66666666666667, 7, 
8, 4.66666666666667, 2.33333333333333, 9.33333333333333, 7.66666666666667, 
10, 7.33333333333333, 7.66666666666667, 8.66666666666667, 6.33333333333333, 
4.33333333333333, 7, 5, 7.66666666666667, 8.33333333333333, 6, 
0, 5, 7.66666666666667, 6, 8.33333333333333, 0, 10, 8, 4.33333333333333, 
1.66666666666667, 5.66666666666667, 5.66666666666667, 0, 4.66666666666667, 
5.66666666666667, 6.33333333333333, 3.33333333333333, 6.66666666666667, 
1.33333333333333, 4.33333333333333, 7.33333333333333, 2, 1.66666666666667, 
3.33333333333333, 6, 6.33333333333333, 4.33333333333333, 7.33333333333333, 
6, 4, 4.33333333333333, 5, 5, 6.66666666666667, 5, 5, 6.33333333333333, 
7.66666666666667, 4.33333333333333, 0.333333333333333, 5.33333333333333, 
6), COM = c(4, 9, 6, 6, 7, 8, 6, 10, 4, 7, 6, 3, 10, 2, 5, 7, 
7, 8, 5, 3, 7, 3, 10, 5, 9, 5, 4, 9, 6, 10, 9, 1, 5, 10, 7, 9, 
10, 0, 6, 4, 5, 5, 3, 8, 8, 10, 10, 5, 8, 0, 0, 7, 5, 6, 1, 5, 
6, 6, 10, 1, 7, 5, 7, 7, 5, 6, 8, 3, 10, 5, 5, 1, 7, 10, 5, 8, 
9, 8, 7, 10, 4, 6, 7, 0, 5, 5, 5, 9, 5, 8, 0, 7, 4, 9, 10, 6, 
5, 5, 6, 6, 5, 8, 10, 6, 7, 3, 8, 5, 3, 5, 4, 2, 4, 4, 7, 9, 
6, 3, 4, 5, 9, 8, 7, 10, 4, 3, 3, 7, 7, 5, 9, 7, 6, 7, 9, 7, 
5, 5, 7, 5, 5, 9, 6, 5, 9, 2, 7, 6, 8, 10, 7, 5, 7, 10, 10, 3, 
9, 5, 9, 2, 5, 3, 6, 6, 5, 0, 7, 8, 10, 9, 10, 5, 8, 8, 5, 1, 
5, 8, 5, 5, 10, 4, 9, 8, 4, 6, 6, 10, 9, 6, 5, 4, 5, 8, 6, 4, 
5, 7, 10, 6, 10, 9, 3, 7, 4, 0, 5, 3, 9, 8, 7, 5, 8, 10, 8, 5, 
5, 1, 7, 8, 4, 5, 5, 7, 5, 6, 8, 8, 7, 1, 5, 6, 5, 9, 7, 1, 5, 
6, 6, 5, 6, 9, 9, 8, 3, 7, 6, 7, 4, 9, 10, 4, 10, 6, 7, 7, 8, 
6, 5, 8, 0, 5, 5, 9, 0, 7, 8, 7, 2, 8, 10, 8, 5, 6, 8, 2, 6, 
7, 5, 5, 1, 8, 10, 10, 8, 8, 8, 5, 7, 6, 7, 8, 8, 6, 0, 5, 7, 
5, 8, 0, 10, 6, 8, 3, 9, 7, 0, 4, 5, 7, 0, 7, 0, 4, 4, 0, 0, 
1, 5, 7, 5, 7, 5, 3, 5, 5, 0, 8, 5, 5, 5, 5, 3, 0, 5, 4)), row.names = c(NA, 
-336L), class = "data.frame")
}

Try the ThSQCA package in your browser

Any scripts or data that you put into this service are public.

ThSQCA documentation built on Sept. 26, 2026, 5:07 p.m.