ตัวอย่างของ collinearity ที่สมบูรณ์แบบในแง่ของเมทริกซ์การออกแบบคืออะไร
ฉันต้องการตัวอย่างที่ไม่สามารถประมาณได้เพราะไม่สามารถย้อนกลับได้
ตัวอย่างของ collinearity ที่สมบูรณ์แบบในแง่ของเมทริกซ์การออกแบบคืออะไร
ฉันต้องการตัวอย่างที่ไม่สามารถประมาณได้เพราะไม่สามารถย้อนกลับได้
คำตอบ:
นี่คือตัวอย่างที่มี 3 ตัวแปร ,และที่เกี่ยวข้องโดยสมการ
โดยที่
ข้อมูลเฉพาะคือ
y x1 x2
1 4.520866 1 2
2 6.849811 2 4
3 6.539804 3 6
ดังนั้นจึงเห็นได้ชัดว่าเป็นผลคูณของดังนั้นเราจึงมีความสมบูรณ์แบบของความสมบูรณ์แบบ
เราสามารถเขียนแบบจำลองเป็น
ที่อยู่:
ดังนั้นเราจึงมี
ตอนนี้เราคำนวณดีเทอร์มีแนนต์ของ :
ใน R เราสามารถแสดงสิ่งนี้ได้ดังนี้:
> x1 <- c(1,2,3)
สร้างx2
หลายx1
> x2 <- x1*2
สร้าง y, การรวมกันเชิงเส้นของx1
, x2
และการสุ่มบางอย่าง
> y <- x1 + x2 + rnorm(3,0,1)
สังเกตว่า
> summary(m0 <- lm(y~x1+x2))
ไม่สามารถประเมินค่าของx2
สัมประสิทธิ์ได้:
Coefficients: (1 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.9512 1.6457 2.401 0.251
x1 1.0095 0.7618 1.325 0.412
x2 NA NA NA NA
Residual standard error: 0.02583 on 1 degrees of freedom
Multiple R-squared: 1, Adjusted R-squared: 0.9999
F-statistic: 2.981e+04 on 1 and 1 DF, p-value: 0.003687
เมทริกซ์โมเดลคือ:
> (X <- model.matrix(m0))
(Intercept) x1 x2
1 1 1 2
2 1 2 4
3 1 3 6
ดังนั้นคือ
> (XXdash <- X %*% t(X))
1 2 3
1 6 11 16
2 11 21 31
3 16 31 46
ซึ่งไม่สามารถย้อนกลับได้ตามที่แสดงโดย
> solve(XXdash)
Error in solve.default(XXdash) :
Lapack routine dgesv: system is exactly singular: U[3,3] = 0
หรือ:
det (XXdash) [1] 0
ต่อไปนี้เป็นสถานการณ์ทั่วไปสองสามข้อที่ทำให้เกิดความสัมพันธ์อันหลากหลายที่สมบูรณ์แบบเช่นสถานการณ์ที่คอลัมน์ของเมทริกซ์การออกแบบขึ้นอยู่กับเส้นตรง เรียกคืนจากพีชคณิตเชิงเส้นซึ่งหมายความว่ามีการรวมกันเชิงเส้นของคอลัมน์ของเมทริกซ์การออกแบบ (ซึ่งสัมประสิทธิ์ไม่เป็นศูนย์ทั้งหมด) ซึ่งเท่ากับศูนย์ ฉันได้รวมตัวอย่างจริง ๆ ไว้เพื่อช่วยอธิบายว่าทำไมหลุมพรางที่เกิดขึ้นบ่อยครั้งฉันพบเกือบทั้งหมดแล้ว!
ตัวแปรตัวหนึ่งเป็นตัวคูณโดยไม่คำนึงว่ามีคำว่าการสกัดกั้น: อาจเป็นเพราะคุณได้บันทึกตัวแปรเดียวกันสองครั้งโดยใช้หน่วยต่าง ๆ (เช่น "ความยาวเป็นเซนติเมตร" มีขนาดใหญ่กว่า "ความยาวเป็นเมตร" อย่างแน่นอน 100 เท่า) หรือเพราะ คุณได้บันทึกตัวแปรหนึ่งครั้งเป็นตัวเลขดิบและหนึ่งครั้งเป็นสัดส่วนหรือเปอร์เซ็นต์เมื่อตัวแก้ไขได้รับการแก้ไข (เช่น "พื้นที่ของจาน Petri อาณานิคม" และ "เปอร์เซ็นต์ของจาน Petri อาณานิคม" จะเป็นทวีคูณที่แน่นอนของแต่ละพื้นที่ แต่ละจาน Petri เหมือนกัน) เรามี collinearity เพราะถ้าโดยที่และเป็นตัวแปร (คอลัมน์ของเมทริกซ์การออกแบบของคุณ) และเป็นค่าคงที่สเกลาร์คือชุดค่าผสมเชิงเส้นของตัวแปรที่มีค่าเท่ากับศูนย์
มีคำดักจับและหนึ่งตัวแปรแตกต่างจากค่าคงที่ : สิ่งนี้จะเกิดขึ้นหากคุณจัดวางตัวแปร ( ) และรวมทั้ง rawและอยู่กึ่งกลางในการถดถอยของคุณ นอกจากนี้ยังจะเกิดขึ้นถ้าตัวแปรของคุณจะถูกวัดในระบบหน่วยต่าง ๆ ที่แตกต่างกันโดยค่าคงที่เช่นถ้าคือ "อุณหภูมิเคลวิน" และเป็น "อุณหภูมิ° C" แล้ว273.15 ถ้าเราถือว่าคำว่า intercept เป็นตัวแปรที่มักจะเป็น (แทนด้วยคอลัมน์ของ ,ในเมทริกซ์การออกแบบ) จากนั้นมีสำหรับค่าคงที่หมายความว่าเป็นการรวมเชิงเส้นของ ,และคอลัมน์ของเมทริกซ์การออกแบบที่เท่ากับศูนย์
มีคำดักจับและตัวแปรหนึ่งถูกกำหนดโดยการแปลงเลียนแบบของอีกตัวแปรหนึ่งนั่นคือคุณมีตัวแปรและเกี่ยวข้องโดยโดยที่และเป็นค่าคงที่ เช่นนี้เกิดขึ้นถ้าคุณกำหนดมาตรฐานตัวแปรเป็นและรวมทั้งตัวแปรrawและมาตรฐานในการถดถอยของคุณ นอกจากนี้ยังเกิดขึ้นหากคุณบันทึกเป็น "อุณหภูมิเป็น° F" และเป็น "อุณหภูมิเป็น° C" เนื่องจากระบบหน่วยเหล่านั้นไม่ได้แชร์ศูนย์ทั่วไป แต่เกี่ยวข้องกับ. หรือในบริบททางธุรกิจสมมติว่ามีต้นทุนคงที่ (เช่นครอบคลุมการส่งมอบ) สำหรับการสั่งซื้อแต่ละครั้งรวมถึงต้นทุนต่อหน่วยที่ขาย แล้วถ้าเป็นค่าใช้จ่ายของการสั่งซื้อและคือจำนวนหน่วยที่สั่งซื้อเรามีB การรวมกันเชิงเส้นที่น่าสนใจคือ0 โปรดทราบว่าหากดังนั้น (3) จะรวม (2) เป็นกรณีพิเศษ ถ้าดังนั้น (3) รวม (1) เป็นกรณีพิเศษ
มีคำดักจับและผลรวมของตัวแปรหลายตัวได้รับการแก้ไข (เช่นใน "กับดักตัวแปรจำลอง") : ตัวอย่างเช่นถ้าคุณมี "เปอร์เซ็นต์ของลูกค้าที่พอใจ", "เปอร์เซ็นต์ของลูกค้าที่ไม่พอใจ" และ "เปอร์เซ็นต์ของลูกค้าที่ไม่พอใจ และไม่พอใจ "จากนั้นตัวแปรทั้งสามนี้จะรวมอยู่เสมอ (ยกเว้นข้อผิดพลาดในการปัดเศษ) ถึง 100 หนึ่งในตัวแปรเหล่านี้ - หรืออีกทางหนึ่งคำว่าการสกัดกั้น - จะต้องถูกดร็อปจากการถดถอยเพื่อป้องกัน collinearity "กับดักตัวแปร dummy" เกิดขึ้นเมื่อคุณใช้ตัวแปรตัวบ่งชี้ (โดยทั่วไปแล้วจะมีประโยชน์น้อยกว่า แต่เรียกว่า "dummies") สำหรับทุกระดับที่เป็นไปได้ของตัวแปรหมวดหมู่ ตัวอย่างเช่นสมมติว่ามีการสร้างแจกันในรูปแบบสีแดงสีเขียวหรือสีน้ำเงิน หากคุณบันทึกตัวแปรเด็ดขาด "red
green
และblue
จะเป็นตัวแปรไบนารีเก็บไว้เป็น1
สำหรับ "ใช่" และ0
สำหรับ "ไม่มี") red + green + blue = 1
แล้วสำหรับแต่ละแจกันเพียงหนึ่งในตัวแปรที่จะเป็นหนึ่งและด้วยเหตุนี้ 1(red) + 1(green) + 1(blue) - 1(1) = 0
เนื่องจากมีเวกเตอร์ของคนในระยะตัดให้รวมกันเชิงเส้น การรักษาตามปกติที่นี่คือการวางการสกัดกั้นหรือปล่อยหนึ่งของตัวบ่งชี้ (เช่นออกred
) ซึ่งกลายเป็นระดับพื้นฐานหรือระดับอ้างอิง ในกรณีนี้สัมประสิทธิ์การถดถอยสำหรับgreen
จะระบุการเปลี่ยนแปลงในการตอบสนองเฉลี่ยที่เกี่ยวข้องกับการเปลี่ยนจากแจกันสีแดงเป็นสีเขียวหนึ่งถือตัวแปรตัวแปรอธิบายอื่น ๆ คงที่
มีอย่างน้อยสองชุดย่อยของตัวแปรแต่ละตัวมีผลรวมคงที่ไม่ว่าจะมีคำว่า intercept หรือไม่: สมมติว่าแจกันใน (4) ถูกสร้างขึ้นในสามขนาดและตัวแปรจัดหมวดหมู่สำหรับขนาดถูกเก็บไว้เป็นตัวแปรตัวบ่งชี้เพิ่มเติมสามตัว . large + medium + small = 1
เราจะมี จากนั้นเรามีชุดค่าผสมเชิงเส้น1(large) + 1(medium) + 1(small) - 1(red) - 1(green) - 1(blue) = 0
แม้ว่าจะไม่มีคำดักจับ เซตย่อยทั้งสองไม่จำเป็นต้องใช้ผลรวมเดียวกันเช่นถ้าเรามีตัวแปรอธิบายเช่นนั้นทุก ๆและแล้ว0
ตัวแปรหนึ่งถูกกำหนดให้เป็นการรวมกันเชิงเส้นของตัวแปรอื่น ๆ : ตัวอย่างเช่นหากคุณบันทึกความยาว , ความกว้างและปริมณฑลของแต่ละสี่เหลี่ยมผืนผ้าดังนั้นดังนั้นเราจึงมีการรวมกันเชิงเส้น0 ตัวอย่างที่มีคำดัก: สมมติว่าธุรกิจสั่งซื้อทางไปรษณีย์มีสองสายผลิตภัณฑ์และเราบันทึกว่าคำสั่งประกอบด้วยของผลิตภัณฑ์แรกที่ราคาต่อหน่วยและของที่สองที่ราคาต่อหน่วยด้วย ค่าใช้จ่ายการจัดส่งคงที่ค ถ้าเรายังรวมถึงค่าใช้จ่ายในการสั่งซื้อเป็นตัวแปรอธิบายจากนั้นและอื่น ๆ . นี่เป็นลักษณะทั่วไปที่ชัดเจนของ (3) นอกจากนี้ยังทำให้เรามีวิธีคิดที่แตกต่างกันเกี่ยวกับ (4): เมื่อเรารู้ว่าแถบทั้งหมดหนึ่งในชุดย่อยของตัวแปรที่มีผลรวมคงที่แล้วส่วนที่เหลือคือส่วนประกอบของพวกเขาดังนั้นจึงสามารถแสดงเป็นชุดเชิงเส้นของพวกเขา . หากเรารู้ว่าลูกค้าพึงพอใจ 50% และไม่พอใจ 20% ดังนั้น 100% - 50% - 20% = 30% จะต้องไม่พอใจหรือไม่พอใจ ถ้าเรารู้ว่าแจกันไม่ใช่สีแดง ( ) และเป็นสีเขียว ( ) แล้วเราก็รู้ว่ามันไม่ใช่สีฟ้า ( )red=0
green=1
blue = 1(1) - 1(red) - 1(green) = 1 - 0 - 1 = 0
ตัวแปรหนึ่งคงที่และเป็นศูนย์โดยไม่คำนึงว่ามีคำว่าดัก: ในการศึกษาเชิงสังเกตการณ์ตัวแปรจะคงที่หากตัวอย่างของคุณไม่มีการเปลี่ยนแปลงที่เพียงพอ (ใด ๆ !) อาจมีการแปรผันของประชากรที่ไม่ได้ถูกเก็บไว้ในตัวอย่างของคุณเช่นหากมีค่าโมดัลบ่อย: บางทีขนาดตัวอย่างของคุณเล็กเกินไปและดังนั้นจึงไม่น่าจะรวมค่าใด ๆ ที่แตกต่างจากโหมดหรือการวัดของคุณ ความแม่นยำไม่เพียงพอที่จะตรวจจับการเปลี่ยนแปลงเล็กน้อยจากโหมด หรืออาจมีเหตุผลทางทฤษฎีสำหรับการขาดการเปลี่ยนแปลงโดยเฉพาะอย่างยิ่งถ้าคุณกำลังศึกษาประชากรย่อย ในการศึกษาคุณสมบัติสร้างใหม่ในลอสแองเจลิสคงไม่น่าแปลกใจที่ทุกจุดข้อมูลจะมีAgeOfProperty = 0
และState = California
! ในการศึกษาทดลองคุณอาจวัดตัวแปรอิสระที่อยู่ภายใต้การควบคุมการทดลอง ควรจะเป็นหนึ่งในการอธิบายตัวแปรของคุณเป็นได้ทั้งคงที่และศูนย์แล้วเรามีได้ทันทีว่าการรวมกันเชิงเส้น (มีค่าสัมประสิทธิ์ศูนย์สำหรับตัวแปรอื่น ๆ ) เป็น0
มีระยะตัดเป็นและอย่างน้อยหนึ่งตัวแปรที่เป็นค่าคงที่ : ถ้าเป็นค่าคงที่เพื่อให้แต่ละแล้วรวมกันเชิงเส้น0
ตัวแปรอย่างน้อยสองตัวเป็นค่าคงที่โดยไม่คำนึงว่ามีคำว่าดัก: ถ้าแต่ละและจากนั้นชุดเชิงเส้น0
จำนวนคอลัมน์ของเมทริกซ์ออกแบบเกินจำนวนแถว, : แม้ในขณะที่ไม่มีความสัมพันธ์ระหว่างตัวแปรความคิดของคุณจะเพียงพอทางคณิตศาสตร์ที่คอลัมน์ของเมทริกซ์การออกแบบของคุณจะเป็นเส้นตรงขึ้นเมื่อn มันเป็นไปไม่ได้ที่จะมีเวกเตอร์อิสระเชิงเส้นในพื้นที่ที่มีขนาดต่ำกว่า : ตัวอย่างเช่นในขณะที่คุณสามารถวาดเวกเตอร์อิสระสองตัวบนกระดาษหนึ่งแผ่น (ระนาบสองมิติ) เวกเตอร์ใด ๆ เพิ่มเติมที่วาดบนหน้าจะต้องอยู่ในช่วงของพวกเขาและดังนั้นจึงเป็นการรวมกันเชิงเส้นของพวกเขา โปรดทราบว่าคำว่า intercept นั้นสร้างคอลัมน์หนึ่งให้กับ matrix ออกแบบดังนั้นจึงนับเป็นหนึ่งในคอลัมน์ของคุณ (สถานการณ์นี้มักเรียกว่าปัญหา "ใหญ่ , เล็ก ": ดูคำถาม CV ที่เกี่ยวข้องนี้ด้วย)
ตัวอย่างข้อมูลด้วยรหัส R
ตัวอย่างแต่ละช่วยให้การออกแบบเมทริกซ์ , เมทริกซ์ (หมายเหตุนี้อยู่เสมอตารางและสมมาตร) และ(X'X) โปรดทราบว่าถ้าเป็นเอกพจน์ (ศูนย์ปัจจัยจึงไม่ผกผัน) แล้วเราไม่สามารถประมาณการ(X'X) เงื่อนไขที่ว่าไม่เป็นเอกพจน์เทียบเท่ากับเงื่อนไขที่ว่ามียศเต็มรูปแบบเพื่อคอลัมน์ที่มีความเป็นอิสระเป็นเส้นตรง: เห็นนี้คำถามคณิตศาสตร์ SEหรืออย่างใดอย่างหนึ่งและสนทนาของ
(1) หนึ่งคอลัมน์มีหลายคอลัมน์
# x2 = 2 * x1
# Note no intercept term (column of 1s) is needed
X <- matrix(c(2, 4, 1, 2, 3, 6, 2, 4), ncol = 2, byrow=TRUE)
X
# [,1] [,2]
#[1,] 2 4
#[2,] 1 2
#[3,] 3 6
#[4,] 2 4
t(X) %*% X
# [,1] [,2]
#[1,] 18 36
#[2,] 36 72
round(det(t(X) %*% X), digits = 9)
#0
(2) คำศัพท์ดักจับและตัวแปรหนึ่งแตกต่างจากตัวแปรอื่นโดยค่าคงที่
# x1 represents intercept term
# x3 = x2 + 2
X <- matrix(c(1, 2, 4, 1, 1, 3, 1, 3, 5, 1, 0, 2), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 2 4
#[2,] 1 1 3
#[3,] 1 3 5
#[4,] 1 0 2
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 4 6 14
#[2,] 6 14 26
#[3,] 14 26 54
round(det(t(X) %*% X), digits = 9)
#0
# NB if we drop the intercept, cols now linearly independent
# x2 = x1 + 2 with no intercept column
X <- matrix(c(2, 4, 1, 3, 3, 5, 0, 2), ncol = 2, byrow=TRUE)
X
# [,1] [,2]
#[1,] 2 4
#[2,] 1 3
#[3,] 3 5
#[4,] 0 2
t(X) %*% X
# [,1] [,2]
#[1,] 14 26
#[2,] 26 54
# Can you see how this matrix is related to the previous one, and why?
round(det(t(X) %*% X), digits = 9)
#80
# Non-zero determinant so X'X is invertible
(3) คำดักจับและตัวแปรหนึ่งคือเลียนแบบการแปลงของอีกตัวแปรหนึ่ง
# x1 represents intercept term
# x3 = 2*x2 - 3
X <- matrix(c(1, 2, 1, 1, 1, -1, 1, 3, 3, 1, 0, -3), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 2 1
#[2,] 1 1 -1
#[3,] 1 3 3
#[4,] 1 0 -3
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 4 6 0
#[2,] 6 14 10
#[3,] 0 10 20
round(det(t(X) %*% X), digits = 9)
#0
# NB if we drop the intercept, cols now linearly independent
# x2 = 2*x1 - 3 with no intercept column
X <- matrix(c(2, 1, 1, -1, 3, 3, 0, -3), ncol = 2, byrow=TRUE)
X
# [,1] [,2]
#[1,] 2 1
#[2,] 1 -1
#[3,] 3 3
#[4,] 0 -3
t(X) %*% X
# [,1] [,2]
#[1,] 14 10
#[2,] 10 20
# Can you see how this matrix is related to the previous one, and why?
round(det(t(X) %*% X), digits = 9)
#180
# Non-zero determinant so X'X is invertible
(4) คำศัพท์ดักจับและผลรวมของตัวแปรหลายตัวได้รับการแก้ไข
# x1 represents intercept term
# x2 + x3 = 10
X <- matrix(c(1, 2, 8, 1, 1, 9, 1, 3, 7, 1, 0, 10), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 2 8
#[2,] 1 1 9
#[3,] 1 3 7
#[4,] 1 0 10
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 4 6 34
#[2,] 6 14 46
#[3,] 34 46 294
round(det(t(X) %*% X), digits = 9)
#0
# NB if we drop the intercept, then columns now linearly independent
# x1 + x2 = 10 with no intercept column
X <- matrix(c(2, 8, 1, 9, 3, 7, 0, 10), ncol = 2, byrow=TRUE)
X
# [,1] [,2]
#[1,] 2 8
#[2,] 1 9
#[3,] 3 7
#[4,] 0 10
t(X) %*% X
# [,1] [,2]
#[1,] 14 46
#[2,] 46 294
# Can you see how this matrix is related to the previous one, and why?
round(det(t(X) %*% X), digits = 9)
#2000
# Non-zero determinant so X'X is invertible
(4a) คำดักจับกับดักตัวแปรจำลอง
# x1 represents intercept term
# x2 + x3 + x4 = 1
X <- matrix(c(1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0), ncol = 4, byrow=TRUE)
X
# [,1] [,2] [,3] [,4]
#[1,] 1 0 0 1
#[2,] 1 1 0 0
#[3,] 1 0 1 0
#[4,] 1 1 0 0
#[5,] 1 0 1 0
t(X) %*% X
# [,1] [,2] [,3] [,4]
#[1,] 5 2 2 1
#[2,] 2 2 0 0
#[3,] 2 0 2 0
#[4,] 1 0 0 1
# This matrix has a very natural interpretation - can you work it out?
round(det(t(X) %*% X), digits = 9)
#0
# NB if we drop the intercept, then columns now linearly independent
# x1 + x2 + x3 = 1 with no intercept column
X <- matrix(c(0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 0 0 1
#[2,] 1 0 0
#[3,] 0 1 0
#[4,] 1 0 0
#[5,] 0 1 0
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 2 0 0
#[2,] 0 2 0
#[3,] 0 0 1
# Can you see how this matrix is related to the previous one?
round(det(t(X) %*% X), digits = 9)
#4
# Non-zero determinant so X'X is invertible
(5) ตัวแปรย่อยสองชุดที่มีผลรวมคงที่
# No intercept term needed
# x1 + x2 = 1
# x3 + x4 = 1
X <- matrix(c(0,1,0,1,1,0,0,1,0,1,1,0,1,0,0,1,1,0,1,0,0,1,1,0), ncol = 4, byrow=TRUE)
X
# [,1] [,2] [,3] [,4]
#[1,] 0 1 0 1
#[2,] 1 0 0 1
#[3,] 0 1 1 0
#[4,] 1 0 0 1
#[5,] 1 0 1 0
#[6,] 0 1 1 0
t(X) %*% X
# [,1] [,2] [,3] [,4]
#[1,] 3 0 1 2
#[2,] 0 3 2 1
#[3,] 1 2 3 0
#[4,] 2 1 0 3
# This matrix has a very natural interpretation - can you work it out?
round(det(t(X) %*% X), digits = 9)
#0
(6) หนึ่งตัวแปรเป็นการรวมเชิงเส้นของตัวแปรอื่น ๆ
# No intercept term
# x3 = x1 + 2*x2
X <- matrix(c(1,1,3,0,2,4,2,1,4,3,1,5,1,2,5), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 1 3
#[2,] 0 2 4
#[3,] 2 1 4
#[4,] 3 1 5
#[5,] 1 2 5
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 15 8 31
#[2,] 8 11 30
#[3,] 31 30 91
round(det(t(X) %*% X), digits = 9)
#0
(7) หนึ่งตัวแปรคงที่และเป็นศูนย์
# No intercept term
# x3 = 0
X <- matrix(c(1,1,0,0,2,0,2,1,0,3,1,0,1,2,0), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 1 0
#[2,] 0 2 0
#[3,] 2 1 0
#[4,] 3 1 0
#[5,] 1 2 0
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 15 8 0
#[2,] 8 11 0
#[3,] 0 0 0
round(det(t(X) %*% X), digits = 9)
#0
(8) คำดักจับและหนึ่งตัวแปรคงที่
# x1 is intercept term, x3 = 5
X <- matrix(c(1,1,5,1,2,5,1,1,5,1,1,5,1,2,5), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 1 5
#[2,] 1 2 5
#[3,] 1 1 5
#[4,] 1 1 5
#[5,] 1 2 5
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 5 7 25
#[2,] 7 11 35
#[3,] 25 35 125
round(det(t(X) %*% X), digits = 9)
#0
(9) ตัวแปรคงที่สองตัว
# No intercept term, x2 = 2, x3 = 5
X <- matrix(c(1,2,5,2,2,5,1,2,5,1,2,5,2,2,5), ncol = 3, byrow=TRUE)
X
# [,1] [,2] [,3]
#[1,] 1 2 5
#[2,] 2 2 5
#[3,] 1 2 5
#[4,] 1 2 5
#[5,] 2 2 5
t(X) %*% X
# [,1] [,2] [,3]
#[1,] 11 14 35
#[2,] 14 20 50
#[3,] 35 50 125
round(det(t(X) %*% X), digits = 9)
#0
(10)
# Design matrix has 4 columns but only 3 rows
X <- matrix(c(1,1,1,1,1,2,4,8,1,3,9,27), ncol = 4, byrow=TRUE)
X
# [,1] [,2] [,3] [,4]
#[1,] 1 1 1 1
#[2,] 1 2 4 8
#[3,] 1 3 9 27
t(X) %*% X
# [,1] [,2] [,3] [,4]
#[1,] 3 6 14 36
#[2,] 6 14 36 98
#[3,] 14 36 98 276
#[4,] 36 98 276 794
round(det(t(X) %*% X), digits = 9)
#0
มีหลายวิธีเช่นที่คอลัมน์ข้อมูลหนึ่งจะเป็นฟังก์ชันเชิงเส้นของข้อมูลอื่นของคุณ บางคนเห็นได้ชัด (เช่นเมตรเทียบกับเซนติเมตร) ในขณะที่คนอื่นอาจจะบอบบางกว่า (เช่นอายุและปีของการศึกษาสำหรับเด็กเล็ก)
หมายเหตุ: ให้แสดงถึงคอลัมน์แรกของ ,คอลัมน์ที่สอง ฯลฯ ... และ หมายถึงเวกเตอร์ของคนซึ่งเป็นสิ่งที่รวมอยู่ในเมทริกซ์การออกแบบ X ถ้าคุณรวมค่าคงที่ในการถดถอยของคุณ