用模数检验模型之间的重要性

时间:2019-04-26 19:57:48

标签: r linear-regression lm emmeans

假设我有这两个模型

<select class="form-control" name="parent">
   <?php
     $pdo = new PDO('mysql:host=dbhost.dev;dbname=sdi;charset=utf8', 'sdiuser', 'sdiuser');
     if(Auth::user()->usertype=="super"){
         $sql = "SELECT * FROM capteurs where type like 'groupe'";}
     else {
         $sql = "SELECT * FROM capteurs where type like 'groupe' and etab like ".Auth::user()->etab;
           }
     $stmt = $pdo->prepare($sql);
     $stmt->execute();
     $groups = $stmt->fetchAll();
       foreach($groups as $group): ?>
         <option id="parent" value="<?= $group['id']; ?>" data-etab="{{$group['etab']}}" name="parent">
         <?= $group['code_capteur']; ?>
         </option>
         <input name="group-etab" type="hidden" value="{{$group['etab']}}"/>
       <?php endforeach; ?>
</select>

并计算每个模型中dat1 <- data.frame(x=factor(c(1,2,1,1,2,2)),y=c(2,5,2,1,7,9)) dat2 <- data.frame(x=factor(c(1,2,1,1,2,2)),y=c(3,3,4,3,4,2)) mod1 <- lm(y~x,data=dat1) mod2 <- lm(y~x, data=dat2) 的水平之间的t检验

x

我如何通过em骨评估两种模型在此对比方面是否存在显着差异?

1 个答案:

答案 0 :(得分:1)

dat1$dataset <- "dat1"
dat2$dataset <- "dat2"
alldat <- rbind(dat1, dat2)
modsame <- lm(y ~ x, data = alldat)
moddiff <- lm(y ~ x * dataset, data = alldat)
anova(modsame, moddiff)

请勿尝试使用emmeans()来执行此操作;这不是它的目的。上面的anova()调用比较了两个模型:modsame假定每个数据集中的x效果都相同; moddiff添加两个术语,dataset解释总体均值的变化,而x:dataset解释x效果的变化。

两个模型之间的比较包括对两者 datasetx:dataset效应的联合检验-这是 F 检验用2分子df -不是 t 测试。