我需要运行一个混合效果模型,但是我被困住了,因为我的数据比我习惯运行的数据更复杂。这里是我的数据框架的一个例子。这是假数据,但它能很好地理解这一点。
我的假数据:
df <- data.frame(subject = c("Matt", "Matt", "Matt", "Matt", "Tom",
"Tom", "Tom", "Tom", "Sarah", "Sarah", "Sarah", "Sarah"), partner = c("Tom",
"Sarah", "Tom", "Sarah", "Matt", "Sarah", "Matt", "Sarah", "Matt",
"Tom", "Matt", "Tom"), closeness_score = c(100, 76, 100, 76, 100, 12, 100,
12, 76, 42, 76, 12), condition = c("control", "control", "experimental",
"experimental", "control", "control", "experimental", "experimental",
"control", "control", "experimental", "experimental"), donations = c(9,
1, 15, 4, 15, 0, 10, 2, 1, 1, 1, 1), total_donations = c(10, 10, 20,
20, 15, 15, 12, 12, 2, 2, 3, 3))
这些数据来自于一个小组级的实验,在这个实验中,一个研究对象可以在任何时候将一个项目捐赠给任何一个合作伙伴。在一次会议中,捐款总额由total_donations
指定,具体捐给该合作伙伴的捐款数量由donations
指定。
我有三个主题,在任何给定的session
中,subject
都可以给任何一个partner
。我正试图确定closeness_score
和condition
是否能够预测相对于其他合作伙伴,有多少捐款给了该合作伙伴。
我非常熟悉R包lme4,并假设我将使用这些数据来运行GLMM。我还找到了一篇链接这里的论文,上面提到了一个类似的例子,但其中很多都超出了我的想象。
有人有建议或代码来运行这种模型吗?最终,我试图找出closeness_score
和condition
是否预测了每一位合作伙伴被试的频率。
发布于 2022-11-15 01:58:40
我想作为一个开始
glmer(donations/total_donations ~ closeness_score*condition +
(1|subject) + (1|partner),
data = df,
family = binomial,
weights = total_donations)
应该能让你离得很近。在示例数据集中没有session
变量,也可以添加(1|session)
。(我假设你们的受试者都参加了多次会议。)
原则上,您可以考虑不同的人对亲密程度评分或情况是否有不同的反应(例如,(closeness_score|subject)
或(closeness_score*condition|subject)
形式的随机效应项,但是您很可能会耗尽数据/很难拟合这些模型……
你应该记得检查过分散。
https://stackoverflow.com/questions/74439800
复制相似问题