Re: [問題] 關於anova已回收

看板MATLAB作者 (好想吃慚愧棒棒糖.......)時間14年前 (2011/10/24 20:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ 引述《liu02112 (好想吃慚愧棒棒糖.......)》之銘言: : ※ 引述《wscrush (請詳細填寫個人資料)》之銘言: : : 各位板友好 : : 這裡想請教一段 計算ANOVA的程式 : : 在以往資料都是乖乖的屬於balance的(也就是Group是一方陣) : : group1 = [1 2 3] : : group2 = [1 2 4] : : group3 = [4 5 6] : : Group = [group1' group2' group3'] : : P = anova1(Group) : : 但今天我拿到一組資料.... : : group1 = [1 2 3] : : group2 = [1 2 ] : : group3 = [1 2 3 4] : : 資料都是unbalance的 (各組之間的樣本數不同) ~"~ : : 我無法把group1 group2 group3 組成 Group : : 請問各位辦法有不影響到結果而順利組成Group嗎? (我將缺值補0但結果當然不同) : : EX: 1 1 1 : : Group = [ 2 2 2 ] : : 3 3 : : 4 : : 抑或是遇到這樣的資料Matlab是否有別的方式計算ANOVA呢? : : 謝謝指教! : 剛剛爬了文 很幸運找到這篇有人跟我一樣問題的文 : 但是很不幸的是 推文裡面說用 nan來代替就能解決 : 然而小弟我找了hlep 裡面卻說 : Columns of X with NaN values are disregarded. : 所以我用nan來填補矩陣 但是仍然跑不動 : 所以請問一下 有人知道這個情況最後要如何解決嗎? 謝謝 這樣說好了 clear; group1 = [-0.1 0.2 -0.1 0 0.1 0 -0.2 -0.1]; group2 = [-0.3 -0.2 0.1 -0.2 -0.1 -0.1 0.1 -0.3 0.2 0]; group3= [-0.3 0 0.1 0.1 -0.1 0.3 -0.1 0.1 -0.2 -0.4 -0.2 0.3]; groups = [group1, group2,group3]; names = {'gp1','gp1','gp1','gp1','gp1','gp1','gp1','gp1','gp2','gp2','gp2','gp2','gp2','gp2','gp2','gp2','gp2','gp2','gp3','gp3','gp3''gp3','gp3','gp3','gp3','gp3','gp3''gp3','gp3','gp3'}; [p,anovatab,stats] = anova1(groups, names); 結果一直出現 ??? Index exceeds matrix dimensions. Error in ==> anova1 at 105 group = group(nonan,:); Error in ==> unblance_anova_test2 at 10 [p,anovatab,stats] = anova1(groups, names); 可是我把gp3減少 又可以跑了 真是一整個莫名其妙 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.182.213
文章代碼(AID): #1EfLv0I7 (MATLAB)