我正在运行模拟,我希望用方差分析方法进行分析,我只是有问题,不知道如何设置它。
我有一个2^5的阶乘设计,所以我有32次实验,用适当的+/-值概述了32种可能的组合。
然而,对于每个组合,我也有大约500个重复。我通过模拟来收集数据,所以我对每种组合都有500次不同的运行。
结果是32个响应值的500个向量。我也有一个设计矩阵/矢量保存所有的+/-值用作5个不同的因素。
我认为如果没有重复,这将是相对直接的(使因子变量为因子,拟合模型做方差分析等),但我对如何设置我的数据矩阵来处理重复感到困惑。我应该有一个500x32矩阵为我的数据?取我回答的平均值?
谢谢
您几乎肯定想要一个包含32x500 = 16000行和6列(5列用于协变量,1列用于响应)的数据帧。
数据帧将像这样布局:
x1 x2 x3 x4 x5 y
0 0 0 0 0 *
0 0 0 0 0 *
...
1 0 0 0 0 *
1 0 0 0 0 *
...
0 1 0 0 0 *
0 1 0 0 0 *
...
,其中每个协变量模式被复制500次。您可以使用
生成它df <- expand.grid(1:500, x1=0:1, x2=0:1, x3=0:1, x4=0:1, x5=0:1)[, -1]
,然后把你的回答贴在旁边。
您的矩阵应该有6列和2^5 * 500 = 16000行。第一列是响应变量,我假设它是一个连续的数值变量。接下来的五列分别代表一个处理。
假设你正在测量植物高度对肥料和光照的反应。肥不是加就是不加,光不是高就是低。你对植物高度的反应。第一个处理列是"肥料",包含1和0。第二个处理列为"Light",包含1和0。
请注意,这里的"治疗"并不是指"高光"one_answers"低光"——这一栏只表示"光"。
要做方差分析,您可以这样做:
aov(Height~Fertilizer*Light, data=Data)
基本上,Data
的第一行将是"500个响应值的32个向量"的列向量(即rbind()
或c()
的32个向量),接下来的5列应该是你的"设计矩阵/向量保存所有的+/-值用作5个不同的因素"。
我希望这个描述能帮助你组织你的想法。