สรุป
ผลลัพธ์การถดถอยอาจมีค่า จำกัด เมื่อตีความอย่างระมัดระวัง รูปแบบการเปลี่ยนแปลงที่ไม่สามารถหลีกเลี่ยงได้จะทำให้การประมาณค่าสัมประสิทธิ์ลดลงอย่างมีนัยสำคัญต่อศูนย์ จำเป็นต้องใช้แบบจำลองที่ดีกว่าซึ่งจะจัดการรูปแบบในวิธีที่เหมาะสมกว่า
(รูปแบบความน่าจะเป็นสูงสุดสามารถสร้างขึ้นได้ แต่อาจไม่สามารถทำได้เนื่องจากการคำนวณที่จำเป็นซึ่งเกี่ยวข้องกับการประเมินเชิงตัวเลขของปริพันธ์หลายมิติมิติจำนวนมิติเท่ากับจำนวนนักเรียนที่ลงทะเบียนในชั้นเรียน)
บทนำ
เพื่อเป็นการเล่าเรื่องที่จะบอกเราถึงสัญชาตญาณของเราลองจินตนาการว่าการสอบทั้ง 38 ข้อนั้นได้รับใน 38 หลักสูตรแยกกันในหนึ่งภาคเรียนที่โรงเรียนขนาดเล็กที่มีนักศึกษา 200 คน ในสถานการณ์จริงนักเรียนเหล่านั้นจะมีความสามารถและประสบการณ์ที่แตกต่างกัน ในฐานะตัวแทนการวัดความสามารถและประสบการณ์เหล่านี้เราอาจกล่าวคะแนนในการสอบคณิตศาสตร์และการทดสอบทางวาจาและปีในวิทยาลัย (1 ถึง 4)
โดยทั่วไปแล้วนักเรียนจะลงทะเบียนเรียนในหลักสูตรตามความสามารถและความสนใจของพวกเขา นักศึกษาใหม่จะเข้าเรียนหลักสูตรเบื้องต้นและหลักสูตรเบื้องต้นนั้นเป็นที่อยู่อาศัยของนักศึกษาเป็นหลัก Upperclassmen และนักศึกษาใหม่ที่มีความสามารถและรุ่นพี่เลี้ยงใช้หลักสูตรขั้นสูงและระดับบัณฑิตศึกษา การเลือกนี้แบ่งชั้นนักเรียนบางส่วนเพื่อให้ความสามารถโดยธรรมชาติของนักเรียนในชั้นเรียนใด ๆ มักจะเป็นเนื้อเดียวกันมากกว่าการแพร่กระจายความสามารถทั่วทั้งโรงเรียน
ดังนั้นนักเรียนที่มีความสามารถมากที่สุดอาจพบว่าตนเองให้คะแนนใกล้ด้านล่างของชั้นเรียนที่ยากและทันสมัยซึ่งพวกเขาลงทะเบียนในขณะที่นักเรียนที่มีความสามารถน้อยที่สุดอาจทำคะแนนใกล้ด้านบนของชั้นเรียนเบื้องต้นที่ง่าย สิ่งนี้อาจสร้างความสับสนให้กับความพยายามโดยตรงที่เกี่ยวข้องกับการจัดอันดับการสอบโดยตรงกับคุณลักษณะของนักเรียนและชั้นเรียน
การวิเคราะห์
ดัชนีนักเรียนที่มีและให้คุณลักษณะของนักเรียนได้รับโดยเวกเตอร์\ ดัชนีเรียนกับและให้คุณลักษณะของชั้นได้รับโดยเวกเตอร์\ ชุดของการลงทะเบียนเรียนในชั้นเรียนเป็นA_jฉันxฉัน j j z j j A jผมผมxผมJJZJJAJ
สมมติว่า "ความแข็งแกร่ง" ของนักเรียนแต่ละคนเป็นฟังก์ชั่นของคุณลักษณะของพวกเขาบวกกับค่าสุ่มบางอย่างซึ่งอาจมีค่าเฉลี่ยเป็นศูนย์:si
si=f(xi,β)+εi.
เราทำแบบจำลองการสอบในชั้นเรียนโดยการเพิ่มค่าสุ่มอิสระเพื่อความแข็งแรงของนักเรียนแต่ละคนที่ลงทะเบียนในชั้นเรียนและแปลงให้อยู่ในอันดับ ดังนั้นถ้านักเรียนจะลงทะเบียนเรียนในระดับยศญาติของพวกเขาจะถูกกำหนดโดยตำแหน่งของพวกเขาในอาร์เรย์ที่เรียงลำดับของค่าi j r i , jjijri,j
(sk+δk,j,k∈Aj).
ตำแหน่งนี้ถูกหารด้วยหนึ่งมากกว่าการลงทะเบียนคลาสทั้งหมดเพื่อให้ตัวแปรตามลำดับเปอร์เซ็นต์:ri,j
pi,j=ri,j1+|Aj|.
ผมอ้างว่าผลการถดถอยขึ้นอยู่ (ไม่น้อย) เกี่ยวกับขนาดและโครงสร้างของการสุ่ม (สังเกต) ค่าและj} εiδi,j ผลลัพธ์ยังขึ้นอยู่กับวิธีการลงทะเบียนเรียนของนักเรียนอย่างแม่นยำ นี้ควรจะเป็นที่เห็นได้ชัดอย่างสังหรณ์ใจ แต่สิ่งที่ไม่ชัดเจนดังนั้น - และดูเหมือนยากที่จะวิเคราะห์ตามหลักวิชา - เป็นวิธีการและวิธีการมากค่าสังเกตและโครงสร้างชั้นส่งผลกระทบต่อการถดถอย
การจำลอง
เราสามารถจำลองสถานการณ์นี้เพื่อสร้างและวิเคราะห์ข้อมูลตัวอย่างโดยไม่ต้องใช้ความพยายามมากเกินไป ข้อดีอย่างหนึ่งของการจำลองคือสามารถรวมจุดแข็งที่แท้จริงของนักเรียนซึ่งในความเป็นจริงไม่สามารถสังเกตได้ อีกอย่างหนึ่งคือเราสามารถเปลี่ยนแปลงขนาดปกติของค่าที่ไม่ได้สังเกตเช่นเดียวกับการกำหนดชั้นเรียน สิ่งนี้ให้ "sandbox" สำหรับการประเมินวิธีการวิเคราะห์ที่เสนอเช่นการถดถอย
ในการเริ่มต้นให้ตั้งตัวสร้างตัวเลขสุ่มเพื่อผลลัพธ์ที่ทำซ้ำได้และระบุขนาดของปัญหา ฉันใช้R
เพราะทุกคนสามารถใช้ได้
set.seed(17)
n.pop <- 200 # Number of students
n.classes <- 38 # Number of classes
courseload <- 4.5 # Expected number of classes per student
เพื่อให้ความสมจริงสร้างn.classes
คลาสของความยากลำบากที่แตกต่างกันในสองสเกล (คณิตศาสตร์และวาจาโดยมีความสัมพันธ์เชิงลบ) ดำเนินการในระดับวิชาการที่แตกต่างกัน (ตั้งแต่ 1 = เกริ่นนำถึง 7 = การวิจัย) และด้วยความง่ายตัวแปร (ในชั้นเรียน "ง่าย" ความแตกต่างระหว่างจำนวนการเรียนรู้ของนักเรียนอาจมีขนาดใหญ่และ / หรือการสอบอาจให้การเลือกปฏิบัติเล็กน้อยในหมู่นักเรียนนี่คือรูปแบบโดยคำศัพท์สุ่มที่สำหรับชั้นมีแนวโน้ม จะมีขนาดใหญ่ผลการสอบนั้นแทบจะไม่สามารถคาดเดาได้จากข้อมูลความแข็งแกร่งของนักเรียนเมื่อชั้นเรียนไม่ใช่ "ง่าย" คำศัพท์แบบสุ่มเหล่านี้มีขนาดเล็กมากและนักเรียนสามารถกำหนดระดับการสอบได้อย่างสมบูรณ์)δi,jj
classes <- data.frame(cbind(
math <- runif(n.classes),
rbeta(n.classes, shape1=(verbal <- (1-math)*5), shape2=5-verbal),
runif(n.classes, min=0, max=7),
rgamma(n.classes, 10, 10)))
rm(math, verbal)
colnames(classes) <- c("math.dif", "verbal.dif", "level", "ease")
classes <- classes[order(classes$math.dif + classes$verbal.dif + classes$level), ]
row.names(classes) <- 1:n.classes
plot(classes, main="Classes")
นักเรียนถูกแพร่กระจายในช่วงสี่ปีที่ผ่านมาและมอบให้โดยมีค่าสุ่มของคุณลักษณะของพวกเขา ไม่มีความสัมพันธ์ระหว่างแอตทริบิวต์เหล่านี้ใด ๆ :
students <- data.frame(cbind(
as.factor(ceiling(runif(n.pop, max=4))),
sapply(rnorm(n.pop, mean=60, sd=10), function(x) 10*median(c(20, 80, floor(x)))),
sapply(rnorm(n.pop, mean=55, sd=10), function(x) 10*median(c(00, 80, floor(x)))),
rnorm(n.pop)
))
colnames(students) <- c("year", "math", "verbal", "ability")
plot(students, main="Students")
รูปแบบคือการที่นักเรียนแต่ละคนมีธรรมชาติ "ความแรง" กำหนดบางส่วนจากคุณลักษณะของพวกเขาและบางส่วนจาก "ความสามารถ" ของพวกเขาซึ่งเป็นค่า ค่าสัมประสิทธิ์ความแข็งแกร่งซึ่งกำหนดความแข็งแกร่งในแง่ของคุณสมบัติอื่น ๆ เป็นสิ่งที่การวิเคราะห์ข้อมูลที่ตามมาจะพยายามที่จะประเมิน หากคุณต้องการที่จะเล่นกับจำลองนี้ทำได้โดยการเปลี่ยน ต่อไปนี้เป็นชุดค่าสัมประสิทธิ์ที่น่าสนใจและสมจริงที่สะท้อนการเรียนรู้ของนักเรียนอย่างต่อเนื่องทั่วทั้งวิทยาลัย (มีจำนวนมากระหว่างปี 2 และ 3) ที่ 100 คะแนนในแต่ละส่วนของ SAT มีค่าประมาณหนึ่งปีของโรงเรียน และความแปรปรวนประมาณครึ่งหนึ่งเกิดจากค่า "ความสามารถ" ที่ไม่ได้รับจากคะแนน SAT หรือปีในโรงเรียนεibeta
beta
beta <- list(year.1=0, year.2=1, year.3=3, year.4=4, math=1/100, verbal=1/100, ability=2, sigma=0.01)
students$strength <- (students$year==1)*beta$year.1 +
(students$year==2)*beta$year.2 +
(students$year==3)*beta$year.3 +
(students$year==4)*beta$year.4 +
students$math*beta$math +
students$verbal*beta$verbal +
students$ability*beta$ability
students <- students[order(students$strength), ]
row.names(students) <- 1:n.pop
(จำไว้ว่าstudents$ability
คือสำรวจ: มันเป็นความเบี่ยงเบนสุ่มเห็นได้ชัดระหว่างความแข็งแรงที่คาดการณ์ไว้จากคุณลักษณะที่สังเกตอื่น ๆ และความแรงที่เกิดขึ้นจริงในการสอบในการลบนี้ผลการสุ่มตั้ง. beta$ability
ให้เป็นศูนย์. beta$sigma
จะคูณease
ค่า: มันเป็นพื้นส่วนเบี่ยงเบนมาตรฐาน ของสัมพันธ์กับช่วงของจุดแข็งของนักเรียนในหลักสูตรที่กำหนดค่าประมาณ.ถึงหรือมากกว่านั้นดูสมเหตุสมผลสำหรับฉัน)δi,j.01.2
ให้นักเรียนเลือกหลักสูตรเพื่อให้ตรงกับความสามารถของพวกเขา เมื่อพวกเขาทำเช่นนั้นเราสามารถคำนวณขนาดคลาสและสะสมผู้ที่มีclasses
dataframe เพื่อใช้ในภายหลัง ค่าของspread
ในassignments <-...
บรรทัดกำหนดวิธีการอย่างใกล้ชิดนักเรียนจะแบ่งเป็นชั้นเรียนด้วยความสามารถ ค่าใกล้เคียงกับเป็นหลักจับคู่นักเรียนที่อ่อนแอที่สุดกับหลักสูตรที่ง่ายที่สุด ค่าใกล้เคียงกับจำนวนชั้นเรียนจะกระจายนักเรียนออกไปอีกเล็กน้อย คุณค่าที่มากกว่านั้นเริ่มที่จะไม่สมจริงเพราะพวกเขามีแนวโน้มที่จะทำให้นักเรียนอ่อนแอลงในหลักสูตรที่ยากที่สุด0
pick.classes <- function(i, k, spread) {
# i is student strength rank
# k is number to pick
p <- pmin(0.05, diff(pbeta(0:n.classes/n.classes, i/spread, (1+n.pop-i)/spread)))
sample(1:n.classes, k, prob=p)
}
students$n.classes <- floor(1/2 + 2 * rbeta(n.pop,10,10) * courseload)
assignments <- lapply(1:n.pop, function(i) pick.classes(i, students$n.classes[i], spread=1))
enrolment <- function(k) length(seq(1, n.pop)[sapply(assignments, function(x) !is.na(match(k, x)))])
classes$size <- sapply(1:n.classes, enrolment)
classes$variation <- by(data, data$Class, function(x) diff(range(x$strength)))
(เป็นตัวอย่างของสิ่งที่ทำตามขั้นตอนนี้สำเร็จดูรูปเพิ่มเติมด้านล่าง)
n1/(n+1)n/(n+1)1/(n+1)01
exam.do <- function(k) {
s <- seq(1, n.pop)[sapply(assignments, function(x) !is.na(match(k, x)))]
e <- classes$ease[k]
rv <- cbind(rep(k, length(s)), s, order(rnorm(length(s), students$strength[s], sd=e*beta$sigma*classes$variation[k])))
rv <- cbind(rv, rv[,3] / (length(s)+1))
dimnames(rv) <- list(NULL, c("Class", "Student", "Rank", "Prank"))
rv
}
data.raw <- do.call(rbind, sapply(1:n.classes, exam.do))
ข้อมูลดิบเหล่านี้เราแนบแอตทริบิวต์ของนักเรียนและคลาสเพื่อสร้างชุดข้อมูลที่เหมาะสำหรับการวิเคราะห์:
data <- merge(data.raw, classes, by.x="Class", by.y="row.names")
data <- merge(data, students, by.x="Student", by.y="row.names")
ลองปรับทิศทางตัวเองโดยการตรวจสอบตัวอย่างข้อมูลแบบสุ่ม:
> data[sort(sample(1:dim(data)[1], 5)),]
Row Student Class Rank Prank math.dif verbal.dif level ease Size year math verbal ability strength n.classes
118 28 1 22 0.957 0.77997 6.95e-02 0.0523 1.032 22 2 590 380 0.576 16.9 4
248 55 5 24 0.889 0.96838 1.32e-07 0.5217 0.956 26 3 460 520 -2.163 19.0 5
278 62 6 22 0.917 0.15505 9.54e-01 0.4112 0.497 23 2 640 510 -0.673 19.7 4
400 89 10 16 0.800 0.00227 1.00e+00 1.3880 0.579 19 1 800 350 0.598 21.6 5
806 182 35 18 0.692 0.88116 5.44e-02 6.1747 0.800 25 4 610 580 0.776 30.7 4
ตัวอย่างเช่นบันทึก 118 กล่าวว่านักเรียน # 28 ลงทะเบียนเรียนในชั้น # 1 และทำคะแนน 22 (จากด้านล่าง) ในการสอบเพื่อให้ได้เปอร์เซ็นต์ที่ 0.957 ระดับความยากโดยรวมของคลาสนี้คือ 0.0523 (ง่ายมาก) มีนักเรียนทั้งหมด 22 คนลงทะเบียนเรียน นักเรียนคนนี้เป็นนักเรียนปีที่สอง (ปีที่ 2) ที่มี 590 คณิตศาสตร์, 380 คะแนนด้วยวาจา SAT จุดเด่นด้านวิชาการโดยรวมอยู่ที่ 16.9 พวกเขาลงทะเบียนเรียนในเวลาสี่ชั้น
ชุดข้อมูลนี้สอดคล้องกับคำอธิบายในคำถาม ตัวอย่างเช่นเปอร์เซ็นต์อันดับที่แน่นอนเกือบจะเหมือนกัน (ตามที่พวกเขาจะต้องมีสำหรับชุดข้อมูลที่สมบูรณ์ใด ๆ เพราะร้อยละอันดับสำหรับชั้นเดียวมีการกระจายชุดไม่ต่อเนื่อง)
โปรดจำไว้ว่าด้วยสัมประสิทธิ์ของสัมประสิทธิ์beta
แบบจำลองนี้ได้เชื่อมโยงอย่างแน่นหนาระหว่างคะแนนการสอบและตัวแปรที่แสดงในชุดข้อมูลนี้ แต่การถดถอยแสดงอะไร ลองถอยหลังค่าลอจิสติกของเปอร์เซ็นต์โดยเทียบกับลักษณะของนักเรียนที่สังเกตได้ทั้งหมดซึ่งอาจเกี่ยวข้องกับความสามารถของพวกเขารวมถึงตัวบ่งชี้ความยากในชั้นเรียน:
logistic <- function(p) log(p / (1-p))
fit <- lm(logistic(Prank) ~ as.factor(year) + math + verbal + level, data=data)
summary(fit)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -2.577788 0.421579 -6.11 1.5e-09 ***
as.factor(year)2 0.467846 0.150670 3.11 0.0020 **
as.factor(year)3 0.984671 0.164614 5.98 3.2e-09 ***
as.factor(year)4 1.109897 0.171704 6.46 1.7e-10 ***
math 0.002599 0.000538 4.83 1.6e-06 ***
verbal 0.002130 0.000514 4.14 3.8e-05 ***
level -0.208495 0.036365 -5.73 1.4e-08 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.48 on 883 degrees of freedom
Multiple R-squared: 0.0661, Adjusted R-squared: 0.0598
F-statistic: 10.4 on 6 and 883 DF, p-value: 3.51e-11
วินิจฉัยแปลง ( plot(fit)
) ดู fastastic: ส่วนที่เหลือเป็น homoscedastic และสวยงามปกติ (แม้ว่าหางสั้นเล็กน้อยซึ่งไม่มีปัญหา); ไม่มีค่าผิดปกติ; และไม่มีอิทธิพลไม่ดีต่อการสังเกตใด ๆ
อย่างที่คุณเห็นทุกอย่างมีความสำคัญมากแม้ว่า R-squared ขนาดเล็กอาจจะน่าผิดหวัง สัมประสิทธิ์ทั้งหมดมีสัญญาณที่ถูกต้องและขนาดที่สัมพันธ์กัน ถ้าเราจะคูณพวกเขาโดยพวกเขาจะเท่ากับ-0.7) Betas ดั้งเดิมคือ (โดยหมายถึงสัมประสิทธิ์ที่ไม่ได้ระบุอย่างชัดเจน)3.5(−9,1.6,3.4,3.9,0.009,0.007,−0.7)(∗,1,3,4,0.010,0.010,∗)∗
สังเกตเห็นความสำคัญสูงของlevel
ซึ่งเป็นคุณลักษณะของชั้นเรียนไม่ใช่ของนักเรียน ขนาดของมันค่อนข้างใหญ่: ระดับของคลาสอยู่ในช่วงตั้งแต่ใกล้ถึงถึงดังนั้นจึงคูณช่วงนี้ด้วยค่าสัมประสิทธิ์โดยประมาณของการแสดงว่ามันมีขนาดของเอฟเฟกต์เหมือนกับเงื่อนไขอื่น ๆ สัญญาณเชิงลบของมันสะท้อนถึงแนวโน้มที่นักเรียนจะทำสิ่งที่เลวร้ายลงเล็กน้อยในชั้นเรียนที่ท้าทายยิ่งขึ้น เป็นเรื่องที่น่าสนใจมากที่เห็นพฤติกรรมนี้เกิดขึ้นจากตัวแบบเพราะระดับนั้นไม่เคยมีส่วนร่วมอย่างชัดเจนในการกำหนดผลลัพธ์การสอบ: มันมีผลเฉพาะกับวิธีการที่นักเรียนเลือกชั้นเรียนของพวกเขา07level
(โดยวิธีการใช้การจัดอันดับเปอร์เซ็นต์ไม่เปลี่ยนแปลงในการถดถอยไม่ได้เปลี่ยนผลการรายงานด้านล่าง)
ขอแตกต่างกันเล็กน้อย แทนที่จะตั้งค่าspread
เป็นเราต้องใช้ดังนั้นจึงทำให้มีการกระจายตัวของนักเรียนมากขึ้น (สมจริงยิ่งขึ้น) ตลอดทั้งชั้นเรียน รับทุกสิ่งใหม่จากด้านบนให้ผลลัพธ์เหล่านี้:138
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -4.902006 0.349924 -14.01 < 2e-16 ***
as.factor(year)2 0.605444 0.130355 4.64 3.9e-06 ***
as.factor(year)3 1.707590 0.134649 12.68 < 2e-16 ***
as.factor(year)4 1.926272 0.136595 14.10 < 2e-16 ***
math 0.004667 0.000448 10.41 < 2e-16 ***
verbal 0.004019 0.000434 9.25 < 2e-16 ***
level -0.299475 0.026415 -11.34 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.3 on 883 degrees of freedom
Multiple R-squared: 0.282, Adjusted R-squared: 0.277
F-statistic: 57.9 on 6 and 883 DF, p-value: <2e-16
( ในตารางกระจายของการมอบหมายชั้นเรียนด้วยspread
ชุดที่นักเรียนจะถูกจัดเรียงโดยเพิ่มความแข็งแกร่งและชั้นเรียนจะถูกจัดเรียงตามระดับที่เพิ่มขึ้นเมื่อแรกเริ่มถูกกำหนดเป็นโครงงานที่มอบหมายจะตกอยู่ในวงดนตรีแนวทแยงแน่น และนักเรียนที่เข้มแข็งจะเรียนหนักขึ้น แต่ก็มีข้อยกเว้นมากมาย38spread
1
)
เวลานี้ R-squared นั้นพัฒนาขึ้นมาก (แม้ว่ายังไม่ค่อยดีเท่าไหร่) อย่างไรก็ตามค่าสัมประสิทธิ์ทั้งหมดเพิ่มขึ้น 20 - 100% ตารางนี้เปรียบเทียบกับแบบจำลองเพิ่มเติม:
Simulation Intercept Year.2 Year.3 Year.4 Math Verbal Level R^2
Beta * 1.0 3.0 4.0 .010 .010 * *
Spread=1 -2.6 0.5 1.0 1.1 .003 .002 -0.21 7%
Spread=38 -4.9 0.6 1.7 1.9 .005 .004 -0.30 25%
Ability=1 -8.3 0.9 2.6 3.3 .008 .008 -0.63 58%
No error -11.2 1.1 3.3 4.4 .011 .011 -0.09 88%
การรักษาspread
ที่และเปลี่ยนจากเป็น (ซึ่งเป็นการประเมินในแง่ดีมากว่าจุดแข็งของนักเรียนคาดเดาได้อย่างไร) ให้ผลเป็นเส้นสุดท้าย ตอนนี้ค่าประมาณ (สำหรับปีของนักเรียนและคะแนน SAT ของนักเรียน) กำลังใกล้เคียงกับค่าที่แท้จริง ในที่สุดการตั้งค่าทั้งสองและเป็นเพื่อลบข้อผิดพลาดและรวมกันให้ R สูงและสร้างประมาณการใกล้เคียงกับค่าที่ถูกต้อง (เป็นที่น่าสังเกตว่าค่าสัมประสิทธิ์ลดลงตามลำดับความสำคัญ)38ability
21ability
sigma
0εiδi,jlevel
การวิเคราะห์อย่างรวดเร็วนี้แสดงให้เห็นว่าการถดถอยอย่างน้อยที่สุดเท่าที่ทำได้ที่นี่จะทำให้เกิดความสับสนในรูปแบบของการแปรผันกับสัมประสิทธิ์ นอกจากนี้สัมประสิทธิ์ยังขึ้นอยู่กับการกระจายตัวของนักเรียนในชั้นเรียนด้วย สิ่งนี้สามารถนำไปใช้ได้บางส่วนโดยรวมถึงคุณลักษณะของชั้นเรียนในตัวแปรอิสระในการถดถอยดังที่ทำไว้ที่นี่ แต่ถึงกระนั้นผลของการกระจายนักศึกษาก็ไม่ได้หายไป
หากขาดความสามารถในการคาดเดาผลการเรียนของนักเรียนที่แท้จริงและการเปลี่ยนแปลงใด ๆ ในการเรียนรู้ของนักเรียนและการปฏิบัติจริงในการตรวจสอบ พวกเขาดูเหมือนจะทำอย่างสม่ำเสมอแนะนำว่าสัมประสิทธิสัมพัทธ์อาจยังมีความหมาย