Сначала вам нужно включить ковариату в таблицу, указанную для wcAggregateCases
. (Здесь gcse5eq
является столбцом 12 из mvad
и уже принадлежит mvad[, c(10:12, 17:86)]
.)
Затем в качестве переменной group
необходимо указать значения ковариаты, соответствующие случаям, выбранным wcAggregateCases
. Вы делаете это с помощью $aggIndex
. Я иллюстрирую ниже:
library(TraMineR)
library(WeightedCluster)
## Load example data and assign labels
data(mvad)
mvad.alphabet <- c("employment", "FE", "HE", "joblessness", "school", "training")
mvad.labels <- c("Employment", "Further Education", "Higher Education",
"Joblessness", "School", "Training")
mvad.scodes <- c("EM", "FE", "HE", "JL", "SC", "TR")
## Aggregate example data
mvad.agg <- wcAggregateCases(mvad[, c(10:12, 17:86)], weights=mvad$weight)
## Define the sequence object
mvad.agg.seq <- seqdef(mvad[mvad.agg$aggIndex, 17:86], alphabet=mvad.alphabet,
states=mvad.scodes, labels=mvad.labels,
weights=mvad.agg$aggWeights)
## Computing OM dissimilarities
mvad.agg.dist <- seqdist(mvad.agg.seq, method="OM", indel=1.5, sm="CONSTANT")
## Discrepancy analysis
dissassoc (mvad.agg.dist, group = mvad$gcse5eq[mvad.agg$aggIndex],
weights = mvad.agg$aggWeights,
weight.permutation = "random-sampling")
Обратите внимание, что я использую здесь weight.permutation = "random-sampling"
, потому что у нас есть нецелые веса.