[英]R: Post-hoc tests after ANOVA on mixed linear model give different results, why and how to proceed?
我想對混合線性 model 執行 ANOVA 測試。
我在 2 個獨立條件下測量了可變響應“ CK ”:-2 組馬(獨立變量:Groupe: Groupe 1和Groupe 2 :介於兩者之間)-在每個受試者的 2 個時間點(獨立變量: Temps:T0和T4 ,主題內:重復測量)
我想通過事后測試執行雙向方差分析(在 Groupe 和 Time 上)。 我構建了一個混合線性 model:
model <- lme(**CK~Temps*Groupe, random=~1|Cheval**,data=data, na.action=na.omit)
並對 model 進行了方差分析測試
anova(modelCK, type = "marginal")
summary(modelCK)
由此; 我只有時間的顯着影響。 現在我想做事后測試以了解顯着差異在哪里。
我的問題是; 我嘗試了幾個選項來獲得事后測試並得到不同的結果。 我很困惑,不知道該保留什么。
***我開始使用 emmeans:
emmeans(modelCK, pairwise~Temps, adjust = "bonferroni")
emmeans(modelCK, pairwise~Groupe, adjust = "bonferroni")
emmeans(modelCK, list(pairwise~ Groupe | Temps),adjust = "bonferroni")
emmeans(modelCK, list(pairwise~ Temps| Groupe),adjust = "bonferroni")
我發現第 1 組和第 2 組之間的 T4 存在顯着差異我發現第 1 組(僅,不是第 2 組)在 T0 和 T4 之間存在顯着差異。
***然后我用 lsmeans
summary( lsmeans( model, pairwise ~ Groupe*Temps), infer=TRUE)
在這里,我沒有發現第 1 組和第 2 組之間在 T4 的差異,但我發現第 2 組在 T0 和 T4 之間存在差異,在第 1 組的差異之上。
***然后我將單向方差分析與事后 t 檢驗結合使用
對於主體間因素(組):
one.way <- data %>%
group_by(Temps) %>%
anova_test(dv = CK, wid = Cheval, between = Groupe) %>%
get_anova_table() %>%
adjust_pvalue(method = "bonferroni")
pwc <- data %>% group_by(Temps) %>% pairwise_t_test(CK ~ Groupe, p.adjust.method = "bonferroni") pwc
組間在 T4 時無顯着差異。
對於主題內因素(時間):
one.way2 <- data %>% group_by(Groupe) %>% anova_test(dv = CK, wid = Cheval, within = Temps) %>% get_anova_table() %>% adjust_pvalue(method = "bonferroni")
pwc2 <- data %>%
group_by(Groupe) %>%
pairwise_t_test(CK ~ Temps, paired = TRUE, p.adjust.method = "bonferroni") %>%
select(-df, -statistic, -p) pwc2
在這里,我發現Groupe 1 和 Groupe 2 在 T0 和 T4 之間的值上存在差異。
為什么根據使用的 function 結果會有這么多差異? 我的代碼合適嗎?
先感謝您,
問候,
編輯:
我想調查 CK 參數是否隨時間顯着增加(Temps),以及增加是否因組(Groupe)而不同。 實際上只是為了比較該箱線圖上的 4 個條件
將以下內容添加到您的文件類型.vim(這將在您的 $VIM/vim72 目錄中,或者您可以在您自己的個人.vim 目錄中創建一個)。 這將告訴 Vim 自動將 xaml 文件的文件類型設置為 xml。
" Xaml
au BufNewFile,BufRead *.xaml setf xml
將此行放在源文件的底部,您應該與 VS2008 兼容:
<!-- vim: tw=120 ts=4 sw=4 et syn=xml :
-->
是的。 XAML 實際上只是 XML ,因此是純文本。
這是一個“Hello World”示例。
<Canvas xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<TextBlock>Hello World!</TextBlock>
</Canvas>
如果您還沒有 XML 插件,您可能想嘗試xmledit
如果你想要完整的智能感知等......可能值得探索的一個選項是ViEmu ,它為 Visual Studio 帶來了 vim 鍵綁定。
只是一些快速的點...
您嘗試的單向方法不使用您安裝的 model。 它們基於更簡單的模型,並忽略部分數據。 我建議反對他們。
lsmeans()
和emmeans()
之間沒有區別,除了結果中的列標題。 因此,如果您從具有相同規格的這兩個函數中得到不同的結果,則意味着您更改了 model 或在某處犯了錯誤。 ( lsmeans
只是一個較舊的術語,其隱含的“最小二乘”並不總是適合它可以處理的模型。)
如果你問不同的問題,你會得到不同的答案。 所以你應該首先考慮你想問什么問題,而不是通過比較不同問題的答案來搖尾巴。
(a) 我建議執行類似emmip(modelCK, Groupe ~ Temps)
的操作,讓您了解 model 告訴您的內容。
(b) 方差分析的結果沒有顯示,所以我只能猜測什么是對的。 但首先要看的是交互。 如果這真的不重要(不僅僅是不重要),那么您應該對每個因素進行邊際均值及其比較(顯示的前兩個emmeans
調用。但考慮首先重新安裝 model 並移除交互( CK ~ Temps + Groupe
)。
(c) 如果不能忽略交互作用,那么這表明顯示的條件交互作用。 后者更詳細,因此如果不需要,應避免使用。
使用adjust = "bonf"
會給你一個過度保守的調整。 我建議把它拿出來並使用默認的 Tukey 調整。
考慮找一位顧問。 許多統計部門可以與您聯系。 統計不僅僅是運行程序。 正確解釋您的研究結果對您來說有多重要?
當然。 為了獲得更好的體驗,請嘗試一些 XML 插件(用於折疊等)並打開語法突出顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.