factorial_anova
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| factorial_anova [2023/05/01 01:26] – hkimscil | factorial_anova [2025/09/25 10:36] (current) – [e.g.,] hkimscil | ||
|---|---|---|---|
| Line 324: | Line 324: | ||
| 10 1 2 9 | 10 1 2 9 | ||
| 11 1 2 8 | 11 1 2 8 | ||
| - | 12 1 2 | + | 12 1 2 |
| 13 2 2 13 | 13 2 2 13 | ||
| 14 2 2 15 | 14 2 2 15 | ||
| Line 337: | Line 337: | ||
| 23 2 3 10 | 23 2 3 10 | ||
| 24 2 3 13 | 24 2 3 13 | ||
| - | > | ||
| > de$type <- factor(de$type, | > de$type <- factor(de$type, | ||
| > de$w.temp <- factor(de$w.temp, | > de$w.temp <- factor(de$w.temp, | ||
| Line 353: | Line 352: | ||
| 10 super | 10 super | ||
| 11 super | 11 super | ||
| - | 12 super | + | 12 super |
| 13 best | 13 best | ||
| 14 best | 14 best | ||
| Line 366: | Line 365: | ||
| 23 best hot 10 | 23 best hot 10 | ||
| 24 best hot 13 | 24 best hot 13 | ||
| - | > | ||
| > de.anova <- aov(cleanness ~ type * w.temp, data=de) | > de.anova <- aov(cleanness ~ type * w.temp, data=de) | ||
| > summary(de.anova) | > summary(de.anova) | ||
| Df Sum Sq Mean Sq F value | Df Sum Sq Mean Sq F value | ||
| - | type | + | type |
| - | w.temp | + | w.temp |
| - | type: | + | type: |
| - | Residuals | + | Residuals |
| --- | --- | ||
| Signif. codes: | Signif. codes: | ||
| + | > | ||
| + | > with(de, interaction.plot(x.factor=type, | ||
| + | + | ||
| + | + | ||
| + | + | ||
| + | + | ||
| + | > | ||
| > | > | ||
| </ | </ | ||
| - | + | {{:pasted:20240429-083635.png}} | |
| - | {{:pasted:20200529-165842.png}} | + | |
| 만약에 손으로 계산했다면 R에서 | 만약에 손으로 계산했다면 R에서 | ||
| < | < | ||
| - | pf(9.810810811, 1, 18, lower.tail=F) | + | de <- read.csv(" |
| - | pf(48.72972973, 2, 18, lower.tail=F) | + | de |
| - | pf(3.972972973, | + | |
| + | de$type <- factor(de$type, | ||
| + | de$w.temp <- factor(de$w.temp, | ||
| + | de | ||
| + | de.typenova <- aov(cleanness ~ type * w.temp, data=de) | ||
| + | summary(de.typenova) | ||
| + | |||
| + | with(de, interaction.plot(x.factor=type, | ||
| + | trace.factor=w.temp, | ||
| + | fun=mean, type=" | ||
| + | ylab=" | ||
| + | pch=c(1, | ||
| + | |||
| + | attach(de) | ||
| + | table(type, w.temp) | ||
| + | n.sub <- length(cleanness) | ||
| + | n.type.group <- 2 | ||
| + | n.w.temp.group <- 3 | ||
| + | |||
| + | tapply(cleanness, | ||
| + | df.within.each <- tapply(cleanness, | ||
| + | n.within.each <- df.within.each + 1 | ||
| + | df.within <- sum(df.within.each) # df within | ||
| + | |||
| + | var.within <- tapply(cleanness, | ||
| + | ss.within.each <- tapply(cleanness, | ||
| + | ss.within.each | ||
| + | ss.within <- sum(ss.within.each) # ss.within | ||
| + | ss.within | ||
| + | |||
| + | |||
| + | interaction.plot(type, | ||
| + | |||
| + | mean.type <- tapply(cleanness, | ||
| + | mean.w.temp <- tapply(cleanness, | ||
| + | mean.type | ||
| + | mean.w.temp | ||
| + | |||
| + | var.type <- tapply(cleanness, | ||
| + | var.w.temp <- tapply(cleanness, | ||
| + | |||
| + | |||
| + | mean.tot <- mean(cleanness) | ||
| + | var.tot <- var(cleanness) | ||
| + | n.sub <- length(cleanness) | ||
| + | df.tot <- n.sub - 1 | ||
| + | ss.tot <- var.tot * df.tot | ||
| + | |||
| + | ## between | ||
| + | mean.each <- tapply(cleanness, | ||
| + | mean.each | ||
| + | mean.tot <- mean(cleanness) | ||
| + | mean.tot | ||
| + | n.each <- tapply(cleanness, | ||
| + | n.each | ||
| + | n.type.each <- tapply(cleanness, | ||
| + | n.w.temp.each <- tapply(cleanness, | ||
| + | |||
| + | ss.w.bet <- sum(n.each*(mean.each-mean.tot)^2) | ||
| + | ss.w.bet | ||
| + | |||
| + | ss.tot | ||
| + | ss.within | ||
| + | ss.w.bet | ||
| + | ss.w.bet + ss.within | ||
| + | |||
| + | ss.type <- sum(n.type.each * ((mean.tot - mean.type)^2)) | ||
| + | ss.w.temp <- sum(n.w.temp.each * ((mean.tot - mean.w.temp)^2)) | ||
| + | ss.type | ||
| + | ss.w.temp | ||
| + | ss.type.w.temp <- ss.w.bet - (ss.type + ss.w.temp) | ||
| + | ss.type.w.temp | ||
| + | |||
| + | ss.tot | ||
| + | ss.w.bet | ||
| + | ss.within | ||
| + | ss.type | ||
| + | ss.w.temp | ||
| + | ss.type.w.temp | ||
| + | |||
| + | df.tot <- n.sub - 1 | ||
| + | df.w.bet <- (n.type.group * n.w.temp.group) - 1 | ||
| + | df.type <- n.type.group - 1 | ||
| + | df.w.temp <- n.w.temp.group - 1 | ||
| + | df.type.w.temp <- df.w.bet - (df.type + df.w.temp) | ||
| + | df.within <- sum(df.within.each) | ||
| + | |||
| + | df.tot | ||
| + | df.w.bet | ||
| + | df.type | ||
| + | df.w.temp | ||
| + | df.type.w.temp | ||
| + | df.within | ||
| + | |||
| + | ms.type <- ss.type / df.type | ||
| + | ms.w.temp <- ss.w.temp / df.w.temp | ||
| + | ms.type.w.temp <- ss.type.w.temp / df.type.w.temp | ||
| + | ms.within <- ss.within / df.within | ||
| + | |||
| + | ms.type | ||
| + | ms.w.temp | ||
| + | ms.type.w.temp | ||
| + | ms.within | ||
| + | |||
| + | |||
| + | f.type <- ms.type / ms.within | ||
| + | f.w.temp <- ms.w.temp / ms.within | ||
| + | f.type.w.temp <- ms.type.w.temp / ms.within | ||
| + | |||
| + | alpha <- .05 | ||
| + | # confidence interval | ||
| + | ci <- 1 - alpha | ||
| + | |||
| + | f.type | ||
| + | # 봐야할 F분포표에서의 F-value | ||
| + | # qt 처럼 qf 사용 | ||
| + | # qf(alpha, df.w.between, | ||
| + | qf(ci, df.type, df.within) | ||
| + | # 혹은 | ||
| + | # qf(alpha, df.type, df.within, lower.tail = F) | ||
| + | # 도 마찬가지 | ||
| + | pf(f.type, df.type, df.within, lower.tail = F) | ||
| + | |||
| + | f.w.temp | ||
| + | qf(ci, df.w.temp, df.within) | ||
| + | pf(f.w.temp, | ||
| + | |||
| + | f.type.w.temp | ||
| + | qf(ci, df.type.w.temp, | ||
| + | pf(f.type.w.temp, | ||
| + | |||
| + | # aov result | ||
| + | summary(de.typenova) | ||
| </ | </ | ||
| - | < | + | |
| - | > pf(9.810810811, | + | |
| - | [1] 0.00575844 | + | |
| - | > pf(48.72972973, | + | |
| - | [1] 5.439849e-08 | + | |
| - | > pf(3.972972973, | + | |
| - | [1] 0.03722434 | + | |
| - | > | + | |
| - | > </ | + | |
| ===== 예 2. cookie experiment ===== | ===== 예 2. cookie experiment ===== | ||
| Line 483: | Line 610: | ||
| | a R Squared = .102 (Adjusted R Squared = .066) |||||| | | a R Squared = .102 (Adjusted R Squared = .066) |||||| | ||
| - | + | 데이터 파일 | |
| - | {{http:// | + | |
| {{: | {{: | ||
| + | 손으로 계산하기 | ||
| {{: | {{: | ||
| Line 752: | Line 879: | ||
| Build hypotheses. Use ANOVA with critical level = .05 to test the researcher' | Build hypotheses. Use ANOVA with critical level = .05 to test the researcher' | ||
| + | see [[https:// | ||
| ====== Materials and links ====== | ====== Materials and links ====== | ||
| * {{: | * {{: | ||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| - | * http:// | ||
| - | {{tag>factorial anova, | + | {{tag>factorial_anova |
factorial_anova.1682872019.txt.gz · Last modified: by hkimscil
