ฉันพยายามแปลงคอลัมน์ปัจจัยของฉันเป็นตัวแปรจำลอง:
str(cards$pointsBin)
# Factor w/ 5 levels ".lte100",".lte150",..: 3 2 3 1 4 4 2 2 4 4 ...
labels <- model.matrix(~ pointsBin, data=cards)
head(labels)
# (Intercept) pointsBin.lte150 pointsBin.lte200 pointsBin.lte250 pointsBin.lte300
# 741 1 0 0 0 0
# 407 1 1 0 0 0
# 676 1 0 0 1 0
# 697 1 1 0 0 0
# 422 1 0 1 0 0
# 300 1 0 1 0 0
ไม่มีคอลัมน์สำหรับค่าแรกของปัจจัยของฉัน ( ".lte100"
) ซึ่งเป็นสิ่งที่แถวแรกควรถูกจัดประเภทเป็น ฉันจะรับข้อมูลนี้กลับมาได้อย่างไร และคอลัมน์สกัดกั้นที่ดูเหมือนจะเป็น 1 ทั้งหมดหมายความว่าอย่างไร
3
เมื่อคุณมีตัวแปรจำลอง "K" โมเดลที่เป็นผลลัพธ์ของคุณจะมี.) คำดักจับ (ซึ่งเป็นคอลัมน์ของคน) และ b.) คอลัมน์เพิ่มเติม "K-1" เหตุผลก็เพราะมิฉะนั้นคอลัมน์ของเมทริกซ์ที่ได้จะไม่เป็นอิสระเป็นเส้นตรง (และดังนั้นคุณจะไม่สามารถทำOLS ได้ )
—
Steve S
ทำไม 'ไม่สื่อความหมาย'? มันเป็นรุ่นเดียวกันที่มีความพอดีที่ดีเหมือนกันเพียงแปรในวิธีที่ต่างกัน
—
Wolfgang
@digitgopher: เมื่อคุณเรียกใช้การถดถอยและจบลงด้วยแบบจำลองเช่นนี้: , คุณจะต้องลงท้ายด้วยรูปแบบทางเทคนิค นี่:ซึ่งคำใหม่นี้จะเท่ากับ "1" เสมอดังนั้นคอลัมน์ของ คน) หากคุณต้องกำจัดคอลัมน์ของคอลัมน์นี้เมื่อเรียกใช้การถดถอยปกติคุณจะต้องจบด้วยโมเดลที่มีอคติเนื่องจากบังคับให้คุณบังคับให้ทุกรุ่นผ่านต้นกำเนิด
—
Steve S
@SteveS: ในความเป็นจริง R นั้นเป็นมิตรมากหากคุณลองลบการสกัดกั้น
—
Scortchi - Reinstate Monica
- 1
เมื่อคุณมีตัวทำนายหมวดหมู่เดียวที่แสดงเป็นปัจจัย (ตามคำถามนี้) มันจะถือว่าคุณไม่ได้หมายความว่า & เปลี่ยนเป็นการใช้ผลรวม - การเข้ารหัสเป็นศูนย์ ซึ่งแน่นอนว่าเป็นเพียงการเปลี่ยนแปลงที่แตกต่างกัน เป็นมิตรมากเกินไปถ้าคุณถามฉัน
@SteveS: ขอบคุณ ฉันควรตรวจสอบแล้ว: มันเปลี่ยนเป็นการเข้ารหัสแบบเซลล์ มันไม่ได้ทำในสิ่งที่คุณคาดหวังซึ่งเหมาะกับรูปแบบที่ถูกบังคับผ่านทางต้นกำเนิดที่คุณเตือนค่อนข้างถูกต้อง (มันจะทำอย่างนั้นแม้ว่าเมื่อคอลัมน์ของประเภทตัวเลข)
—
Scortchi - Reinstate Monica