4个蜂箱配备了传感器,可收集蜂巢内的温度,湿度,压力和分贝.这些是响应变量.
治疗是wifi暴露,实验组从第1天到第20天暴露于wifi,然后从第35-45天再次暴露,并且收集数据直到第54天.荨麻疹数= 4,n由传感器收集的数据每个蜂巢=〜百万.
我在运行混合效果模型时遇到困难.
所有蜂房的响应变量都有一个数据框.
names(Hives)
[1] "time" "dht22_t" "dht11_t" "dht22_h"
[5] "dht11_h" "db" "pa" "treatment_hive"
[9] "wifi"
Run Code Online (Sandbox Code Playgroud)
时间为"%Y-%m-%d%H:%M:%S",dht11/22_t/h是温度和湿度数据."wifi"是对应于暴露时间的二分变量(1 =开0 =关),治疗蜂巢是暴露于wifi的荨麻疹的另一个二分变量(1 =暴露,0 =对照).
这是我得到的错误.
attach(Hives)
model2 = lme(pa_t~wifi*treatment_hive, random=time, na.action=na.omit, method="REML",)
Error in reStruct(random, REML = REML, data = NULL) :
Object must be a list or a formula
Run Code Online (Sandbox Code Playgroud)
以下是代码示例:
time dht22_t dht11_t dht22_h dht11_h db pa treatment_hive wifi
1 01/09/2014 15:19 NA NA NA NA 51.75467 NA 0 1
2 01/09/2014 15:19 30.8 31 59.8 44 55.27682 100672 0 1
3 01/09/2014 15:19 30.8 31 60.3 44 54.81995 100675 0 1
4 01/09/2014 15:19 30.8 31 60.9 44 54.14134 100671 0 1
5 01/09/2014 15:19 30.8 31 61.1 44 53.88574 100672 0 1
6 01/09/2014 15:19 30.8 31 61.2 44 53.68800 100680 0 1
Run Code Online (Sandbox Code Playgroud)
R版本2.15.1(2012-06-22)平台:i486-pc-linux-gnu(32位)
附加软件包:[1] ggplot2_0.8.9 proto_0.3-9.2 reshape_0.8.4 plyr_1.7.1 nlme_3.1- 104
[6] lme4_0.999999-0 Matrix_1.0-6 lattice_0.20-6
这里有各种各样的问题,一些与编程相关(StackOverflow),但可能统计问题(适用于CrossValidated或r-sig-mixed-models@r-project.org更重要).
tl; dr如果你只是想避免错误,我认为你需要random=~1|hive(无论你的hive-indicator变量是什么)来适应一个模型,其中基线响应(拦截)因蜂巢而异,但我鼓励你继续阅读...
attach(Hives),data=Hives在你的lme()电话中使用(不一定是问题,但[更多]更好的做法)formula=...~...+time, random=~time|hive(其中...代表现有模型的位)?strptime或lubridate包装),从开始时间开始的秒/分钟/小时可能是最明智的.(你的时间分辨率是多少?每个蜂巢有多个传感器,在这种情况下你应该考虑适应传感器的随机效应吗?)lme4包mgcv::gamm或gamm4包裹); (2)时间自相关(考虑correlation在lme模型中添加一个参数).| 归档时间: |
|
| 查看次数: |
1487 次 |
| 最近记录: |