สัญกรณ์สำหรับการสร้างแบบจำลองหลายระดับ


10

สูตรหนึ่งต้องระบุสำหรับการฝึกอบรมรูปแบบหลายระดับ (ใช้lmerจากlme4 Rห้องสมุด) ทำให้ฉันได้รับเสมอ ฉันได้อ่านหนังสือและแบบฝึกหัดที่นับไม่ถ้วน แต่ไม่เข้าใจเลย

นี่คือตัวอย่างจากบทช่วยสอนนี้ที่ฉันต้องการดูสูตรในสมการ เราพยายามจำลองความถี่เสียงเป็นหน้าที่ของเพศ (เพศหญิงมีระดับเสียงสูงกว่าเพศชายโดยทั่วไป) และทัศนคติของบุคคล (ไม่ว่าเขา / เธอจะตอบด้วยวิธีสุภาพหรือไม่เป็นทางการ) ในสถานการณ์ต่าง ๆ นอกจากนี้อย่างที่คุณเห็นจากsubjectคอลัมน์แต่ละคนจะถูกวัดหลายครั้ง

> head(politeness, n=20)
   subject gender scenario attitude frequency
1       F1      F        1      pol     213.3
2       F1      F        1      inf     204.5
3       F1      F        2      pol     285.1
4       F1      F        2      inf     259.7
5       F1      F        3      pol     203.9
6       F1      F        3      inf     286.9
7       F1      F        4      pol     250.8
8       F1      F        4      inf     276.8
9       F1      F        5      pol     231.9
10      F1      F        5      inf     252.4
11      F1      F        6      pol     181.2
12      F1      F        6      inf     230.7
13      F1      F        7      inf     216.5
14      F1      F        7      pol     154.8
15      F3      F        1      pol     229.7
16      F3      F        1      inf     237.3
17      F3      F        2      pol     236.8
18      F3      F        2      inf     251.0
19      F3      F        3      pol     267.0
20      F3      F        3      inf     266.0

subject, genderและattitudeเป็นปัจจัย (ที่มีinformalและfemaleถือเป็นระดับฐานattitudeและgenderในสมการด้านล่าง) ทีนี้แนวคิดหนึ่งก็คือการฝึกแบบจำลองที่มีจุดตัดต่างกันสำหรับแต่ละแบบsubjectและscenario:

politeness.model=lmer(frequency ~ attitude + gender + 
 (1|subject) + (1|scenario), data=politeness)

หากความเข้าใจของฉันเกี่ยวกับสัญกรณ์ถูกต้องสิ่งนี้สอดคล้องกับ:

Pol ฉัน + แกมมาชายฉันYผม=aJ[ผม]1+ak[ผม]2+β attitudePolผม+γ genderชายผม

ที่หมายถึงจุดข้อมูล,หมายถึงระดับกลุ่มและหมายถึงระดับกลุ่มสำหรับสำหรับจุดข้อมูล และเป็นตัวบ่งชี้ไบนารีฉันทีเอชเจ[ ผม] k [ ผม] ฉันทีเอชออฟไลน์ออฟไลน์เพศชายผมผมเสื้อชั่วโมงJ[ผม]subjectk[ผม]scenarioผมเสื้อชั่วโมงattitudePolgenderชาย

หากต้องการแนะนำความลาดชันแบบสุ่มสำหรับทัศนคติเราสามารถเขียน:

politeness.model = lmer(frequency ~ attitude + gender + 
 (1+attitude|subject) + (1+attitude|scenario), data=politeness)

หากความเข้าใจของฉันชัดเจนอีกครั้งสิ่งนี้สอดคล้องกับ:

Yผม=aJ[ผม]1+ak[ผม]2+(βJ[ผม]1+βk[ผม]2) attitudePolผม+γ genderชายผม

ทีนี้Rคำสั่งต่อไปนี้ตรงกับสมการอะไร?

politeness.null = lmer(frequency ~ gender +
 (1+attitude|subject) +  (1+attitude|scenario), data=politeness)

1
ไม่ใช่คนที่สมเหตุสมผลมาก ประชากรลาดชันเฉลี่ยที่เกี่ยวกับทัศนคติที่จะถือว่าเป็นศูนย์ ...
เบน Bolker

@BenBolker: เฮ้คุณช่วยเขียนมันในรูปสมการได้มั้ย สมการก่อนหน้าของฉันถูกต้องหรือไม่ ในรูปแบบที่ผ่านมาฉันยังคงเห็นattitudeถูกปรับอากาศบนและsubject scenario
abhinavkulkarni

คำตอบ:


12

ฉันจะเขียน

~ attitude + gender + (1|subject) + (1|scenario)

เช่น

Yผม~β0+β1ผม(ท่าที=Pol)+β2ผม(เพศ=ชาย)+1,J[ผม]+2,k[ผม]+εผม1~ยังไม่มีข้อความ(0,σ12)2~ยังไม่มีข้อความ(0,σ22)ε~ยังไม่มีข้อความ(0,σR2)
βผม
~ attitude + gender + (1+attitude|subject) + (1+attitude|scenario)

เพิ่มความแตกต่างระหว่างหัวเรื่องในการตอบสนองattitudeและscenario(เราสามารถเขียนส่วนสุ่มเอฟเฟ็กต์อย่างเท่าเทียม(attitude|subject) + (attitude|scenario)กันเช่นออกจากการสกัดกั้นโดยนัยนี่เป็นเรื่องของรสนิยม) ตอนนี้

Yผม~β0+β1ผม(ท่าที=Pol)+β2ผม(เพศ=ชาย)+1,J[ผม]+3,J[ผม]ผม(ท่าที=Pol)+2,k[ผม]+4,k[ผม]ผม(ท่าที=Pol)+εผม{1,3}~MVN(0,Σ1){2,4}~MVN(0,Σ2)ε~ยังไม่มีข้อความ(0,σR2)
Σ1Σ2
Σ1=(σ12σ13σ13σ32)
Σ2

Yผม~(β0+1,J[ผม]+2,k[ผม])+(β1+3,J[ผม]+4,k[ผม])ผม(ท่าที=Pol)+β2ผม(เพศ=ชาย)+εผม

attitudeβ1=0attitude

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.