我正在对一些数据进行建模,我认为我有两个交叉随机效应。但是数据集是不平衡的,我不确定需要做些什么来解释它。
我的数据是一组事件。当客户端与提供者会面以执行任务时发生事件,该任务成功与否。有成千上万的客户和供应商,每个客户和供应商都参与了不同数量的活动(大约 5 到 500 个)。每个客户和提供者都有一定的技能水平,任务成功的机会取决于两个参与者的技能。客户和供应商之间没有重叠。
我对客户和提供商群体的各自差异感兴趣,因此我们可以知道哪个来源对成功率的影响更大。我还想知道我们实际拥有数据的客户和供应商的技能的具体价值,以确定最佳/最差客户或供应商。
最初,我想假设成功的可能性完全取决于客户和提供者的综合技能水平,没有其他固定影响。因此,假设 x 是客户端的一个因素,而 y 是提供者的一个因素,那么在 R 中(使用包 lme4)我有一个模型指定为:
glmer( success ~ (1 | x) + (1 | y), family=binomial(), data=events)
一个问题是客户在供应商之间分布不均。更高技能的客户更有可能与更高技能的提供者相匹配。我的理解是随机效应必须与模型中的任何其他预测变量不相关,但我不确定如何解释它。
此外,一些客户和提供者的事件很少(少于 10 个),而另一些则有很多(最多 500 个),因此我们拥有的每个参与者的数据量分布广泛。理想情况下,这将反映在每个参与者技能估计周围的“置信区间”中(尽管我认为置信区间一词在这里并不完全正确)。
由于数据不平衡,交叉随机效应是否会出现问题?如果是这样,我应该考虑哪些其他方法?