최상의 답변
- 코가 자라지 않으면 거짓말을하고 코가 자랄 것이지만 말하고 있습니다. 진실을 말하며 일어날 수 없습니다.
- 코가 커지면 진실을 말하는 것이므로 일어날 수 없습니다.
- 코가 커지면 진실을 말하고 있지만 거짓말하면 코가 커져서 일어날 수없는 일입니다.
- 코가 자라지 않으면 그는 거짓말을하고 자라지 만 그런 다음 진실을 말하는 것입니다. 불가능합니다.
답변
교직원 회의에서 9 학년 교사 그룹은 학생들을위한 최적의 학습 기간이 무엇인지 더 깊이 이해해야한다고 결정했습니다. 만족스러운 결과를 얻을 수 있습니다. 그래서 그들은 학생들이 공부 한 대략적인 시간을 모아서 학생의 시험 점수와 비교하기로 결정했습니다.
Mr. Simpson은 더 많은 데이터가 더 나은 결과를 의미한다고 교수진에게 확신 시켰으므로 모든 교사는 분석을 위해 교차 과정 데이터를 통합했습니다.
결과는 놀라웠습니다. 모든 사람이 혼란스러워하는 것은 학생이 덜 공부할수록 시험에서 더 높은 점수를받는 경향이 있습니다.
사실 계수는 이 상관 관계는 -0.7981로 매우 부정적인 관계였습니다.
학생들이 더 적게 공부하도록 격려해야합니까? 데이터가 그러한 주장을 어떻게 뒷받침 할 수 있습니까? 뭔가 빠진 게 분명합니다.
결과를 논의한 후 교사들은 학교 통계학자인 Paradox 부인과 상담해야한다는 데 동의했습니다. Mr. Simpson이 결과에서 찾은 내용을 Paradox 부인에게 설명한 후 Paradox 부인은 각 과정의 데이터를 개별적으로 분석 할 것을 제안했습니다.
그래서 그들은 계속해서 Phys를 분석했습니다. Ed. 그리고 그들의 마음을 날려 버렸습니다.
0.6353의 상관 관계! 통계적 세계에서 이것이 어떻게 가능했을까요?
Mrs. Paradox는이를 Simpson s Paradox로 설명했습니다. 이는 세 번째 교란 변수가 도입 될 때 겉보기에 강한 관계가 반전되거나 사라지는 통계적 현상입니다.
그녀는 Mr. Simpson에게 모든 데이터를 다시 한 번 표시하도록 설득 한 다음 각 코스를 개별적으로 색상으로 구분하여 구분했습니다.
그렇게 한 후 Simpson과 9 학년 교수진은 그 관계가 정말 긍정적이며, 학생이 공부 한 시간이 많을수록 성적이 높아지는 경향이 있다고 결론지었습니다.
포함 분석의 연구 과정은 관계를 완전히 뒤집 었습니다.
이 예의 R 코드 :
# Load the tidyverse
library(tidyverse)
# Generating correlated data with mvrnorm() from the MASS library
library(MASS)
# Sample Means
mu <- c(20,4)
# Define our covariance matrix, and specify the covariance relationship (i.e. 0.7 in this case)
Sigma <- matrix(.7, nrow=2, ncol=2) + diag(2)*.3
# create both variables with 100 samples
vars <- mvrnorm(n=100, mu=mu, Sigma=Sigma)
# Examine the data and the correlation
head(vars)
cor(vars)
# Plot the variables
plot(vars[,1],vars[,2])
# Create a function for generating 2 correlated variables given variable means
corVars<-function(m1,m2,confVar){
mu <- c(m1,m2)
Sigma <- matrix(.7, nrow=2, ncol=2) + diag(2)*.5
vars <- mvrnorm(n=100, mu=mu, Sigma=Sigma)
Var1<-vars[,1]
Var2<-vars[,2]
df<-as.data.frame(cbind(Var1 = Var1,Var2 = Var2,Var3 = confVar))
df$Var1<-as.numeric(as.character(df$Var1))
df$Var2<-as.numeric(as.character(df$Var2))
}
# Re-running for multiple sets and combining into a single dataframe df
d1 <- corVars(m1 = 20, m2 = 82, confVar = "Algebra")
d2 <- corVars(m1 = 18, m2 = 84, confVar = "English")
d3 <- corVars(m1 = 16, m2 = 86, confVar = "Social Studies")
d4 <- corVars(m1 = 14, m2 = 88, confVar = "Art")
d5 <- corVars(m1 = 12, m2 = 90, confVar = "Physical Education")
# Create the aggregate data
df<-rbind(d1,d2,d3,d4,d5)
# Grade & Study Time Plot
df \%>\%
ggplot(aes(x = Var1, y = Var2/100)) +
geom\_jitter(aes(size = 13), alpha = 0.55, shape = 21, fill = "darkgray", color = "black") +
scale\_y\_continuous(name = "Final Percentage", labels = percent)+
scale\_x\_continuous(name = "Approximate Hours for Preparation")+
guides(size = FALSE) +
ggtitle("Impact of Studying on Final Grades")+
theme(plot.title = element\_text(hjust = 0.5))+
theme\_bw()
# Grade & Study Time Correlation
cor(df$Var1, df$Var2)
# PhysEd Plot
df \%>\%
filter(Var3 == "Physical Education") \%>\%
ggplot(aes(x = Var1, y = Var2/100)) +
geom\_jitter(aes(size = 13), alpha = 0.55, shape = 21, fill = "darkgray", color = "black") +
scale\_y\_continuous(name = "Final Percentage", labels = percent)+
scale\_x\_continuous(name = "Approximate Hours for Preparation")+
guides(size = FALSE) +
ggtitle("Impact of Studying on Final Grades (Physical Education Only)")+
theme(plot.title = element\_text(hjust = 0.5))+
theme\_bw()
# PhysEd Correlation
cor(df$Var1[df$Var3 == "Physical Education"], df$Var2[df$Var3 == "Physical Education"])
# Confounding plot
df \%>\%
ggplot(aes(x = Var1, y = Var2/100)) +
geom\_jitter(aes(size = 1, fill = Var3), alpha = 0.25, shape = 21) +
guides(fill = guide\_legend(title = "Course Class", override.aes = list(size = 5)),
size = FALSE) +
scale\_y\_continuous(name = "Testing Results", labels = percent)+
scale\_x\_continuous(name = "Approximate Hours for Preparation")+
ggtitle("Impact of Studying on Final Grades")+
theme(plot.title = element\_text(hjust = 0.5))+
theme\_bw()