รูปแบบเอฟเฟกต์ผสมกับการทำรัง


34

ฉันมีข้อมูลที่รวบรวมจากการทดสอบที่จัดระเบียบดังนี้:

สองไซต์แต่ละแห่งมีต้นไม้ 30 ต้น ได้รับการปฏิบัติ 15, 15 คือการควบคุมในแต่ละเว็บไซต์ จากต้นไม้แต่ละต้นเราสุ่มตัวอย่างก้านสามชิ้นและรากสามชิ้นดังนั้น 6 ระดับ 1 ตัวอย่างต่อต้นซึ่งแสดงโดยหนึ่งในสองระดับปัจจัย (รากลำต้น) จากนั้นตัวอย่างต้นกำเนิด / รากเราใช้สองตัวอย่างโดยการผ่าเนื้อเยื่อต่าง ๆ ภายในตัวอย่างซึ่งแสดงโดยหนึ่งในสองระดับปัจจัยสำหรับประเภทเนื้อเยื่อ (ประเภทเนื้อเยื่อ A, ประเภทเนื้อเยื่อ B) ตัวอย่างเหล่านี้วัดเป็นตัวแปรต่อเนื่อง จำนวนการสังเกตทั้งหมดคือ 720; 2 ไซต์ * ต้นไม้ 30 ต้น * (ตัวอย่างลำต้นสามชิ้น + ตัวอย่างรากสามต้น) * (เนื้อเยื่อหนึ่งตัวอย่าง + เนื้อเยื่อหนึ่งตัวอย่าง B) ข้อมูลมีลักษณะเช่นนี้ ...

        ï..Site Tree Treatment Organ Sample Tissue Total_Length
    1        L  LT1         T     R      1 Phloem           30
    2        L  LT1         T     R      1  Xylem           28
    3        L  LT1         T     R      2 Phloem           46
    4        L  LT1         T     R      2  Xylem           38
    5        L  LT1         T     R      3 Phloem          103
    6        L  LT1         T     R      3  Xylem           53
    7        L  LT1         T     S      1 Phloem           29
    8        L  LT1         T     S      1  Xylem           21
    9        L  LT1         T     S      2 Phloem           56
    10       L  LT1         T     S      2  Xylem           49
    11       L  LT1         T     S      3 Phloem           41
    12       L  LT1         T     S      3  Xylem           30

ฉันกำลังพยายามปรับให้เข้ากับโมเดลเอฟเฟกต์แบบผสมโดยใช้ R และ lme4 แต่เป็นของใหม่สำหรับโมเดลผสม ฉันต้องการสร้างแบบจำลองการตอบสนองเช่นการรักษา + ระดับ 1 ปัจจัย (ลำต้น, ราก) + ปัจจัยระดับ 2 (เนื้อเยื่อ A, เนื้อเยื่อ B) โดยมีเอฟเฟกต์แบบสุ่มสำหรับตัวอย่างเฉพาะที่ซ้อนกันภายในสองระดับ

ใน R ฉันกำลังทำสิ่งนี้โดยใช้ lmer ดังนี้

fit <- lmer(Response ~ Treatment + Organ + Tissue + (1|Tree/Organ/Sample)) 

จากความเข้าใจของฉัน (... ซึ่งไม่แน่ใจและทำไมฉันโพสต์!) คำ:

(1|Tree/Organ/Sample)

ระบุว่า 'ตัวอย่าง' ซ้อนอยู่ภายในตัวอย่างอวัยวะซึ่งซ้อนอยู่ภายในต้นไม้ การทำรังแบบนี้เกี่ยวข้องหรือไม่ถูกต้อง? ขออภัยหากคำถามนี้ไม่ชัดเจนถ้าเป็นเช่นนั้นโปรดระบุว่าฉันสามารถทำอย่างละเอียดได้ที่ไหน

คำตอบ:


33

ฉันคิดว่ามันถูกต้อง

  • (1|Tree/Organ/Sample)ขยายเป็น / เทียบเท่ากับ(1|Tree)+(1|Tree:Organ)+(1|Tree:Organ:Sample)(โดยที่:หมายถึงการโต้ตอบ)
  • ปัจจัยคงที่Treatment, OrganและTissueได้รับการจัดการโดยอัตโนมัติในระดับที่ถูกต้อง
  • คุณควรรวมSiteไว้เป็นเอฟเฟกต์แบบคงที่ (โดยหลักการแล้วมันเป็นเอฟเฟกต์แบบสุ่ม แต่ก็ไม่เหมาะที่จะคาดคะเนความแปรปรวนระหว่างไซต์ที่มีเพียงสองไซต์เท่านั้น) สิ่งนี้จะลดความแปรปรวนระหว่างต้นไม้เล็กน้อย
  • คุณอาจจะรวมข้อมูลทั้งหมดที่อยู่ภายในกรอบข้อมูลและผ่านนี้อย่างชัดเจนlmerผ่านdata=my.data.frameการโต้แย้ง

คุณอาจพบว่าคำถามที่พบบ่อยของ glmm มีประโยชน์ (เน้นที่ GLMM แต่มีเนื้อหาที่เกี่ยวข้องกับตัวแบบผสมแบบเชิงเส้นด้วย)


จะเกิดอะไรขึ้นถ้า Erik ต้องการระบุโครงสร้างความแปรปรวนร่วมสำหรับดักเหล่านี้ คืออาจคาดว่าตัวอย่างที่มีการสกัดกั้นต้นไม้ที่เป็นบวกจะมีการสกัดกั้นอวัยวะที่เป็นบวก การทำรังดูแลปัญหานี้โดยอัตโนมัติหรือไม่ ถ้าไม่เช่นนั้นจะระบุโครงสร้างได้อย่างไร?
Sheridan Grant

ฉันคิดว่าถ้าคุณพยายามเขียนสมการสำหรับกรณีนั้นคุณจะพบว่ามันได้รับการดูแล
Ben Bolker

13

ฉันอ่านคำถามนี้และคำตอบของดร. โบลเคอร์และพยายามทำซ้ำข้อมูล (ไม่สนใจมากตรงไปตรงมาเกี่ยวกับคำว่า "ความยาว" หมายถึงอะไรในคำศัพท์หรือหน่วยทางชีววิทยาแล้วพอดีกับโมเดลข้างต้น เพื่อแบ่งปันและแสวงหาข้อเสนอแนะเกี่ยวกับการมีอยู่ของความเข้าใจผิดที่น่าจะเป็น

รหัสที่ฉันใช้ในการสร้างข้อมูลสมมตินี้สามารถพบได้ที่นี่และชุดข้อมูลมีโครงสร้างภายในของ OP:

     site     tree treatment organ sample tissue    length
1    L       LT01         T  root      1  phloem  108.21230
2    L       LT01         T  root      1  xylem   138.54267
3    L       LT01         T  root      2  phloem   68.88804
4    L       LT01         T  root      2  xylem   107.91239
5    L       LT01         T  root      3  phloem   96.78523
6    L       LT01         T  root      3  xylem    88.93194
7    L       LT01         T  stem      1  phloem  101.84103
8    L       LT01         T  stem      1  xylem   118.30319

โครงสร้างมีดังนี้:

 'data.frame':  360 obs. of  7 variables:
     $ site     : Factor w/ 2 levels "L","R": 1 1 1 1 1 1 1 1 1 1 ...
 $ tree     : Factor w/ 30 levels "LT01","LT02",..: 1 1 1 1 1 1 1 1 1 1 ...
     $ treatment: Factor w/ 2 levels "C","T": 2 2 2 2 2 2 2 2 2 2 ...
 $ organ    : Factor w/ 2 levels "root","stem": 1 1 1 1 1 1 2 2 2 2 ...
     $ sample   : num  1 1 2 2 3 3 1 1 2 2 ...
 $ tissue   : Factor w/ 2 levels "phloem","xylem": 1 2 1 2 1 2 1 2 1 2 ...
     $ length   : num  108.2 138.5 68.9 107.9 96.8 ...

ชุดข้อมูลคือ "rigged" (ยินดีรับความคิดเห็นที่นี่) ดังนี้:

  1. สำหรับtreatmentมีผลคงที่ที่มีสองดักที่แตกต่างกันสำหรับการรักษากับการควบคุม ( 100กับ70) และไม่มีผลแบบสุ่ม
  2. ฉันจะตั้งค่าสำหรับtissueที่มีผลกระทบที่โดดเด่นคงมีดักที่แตกต่างกันมากสำหรับphloemเมื่อเทียบกับxylem( 3เมื่อเทียบกับ6) sd = 3และผลกระทบแบบสุ่มด้วย
  3. organN(0,3)sd = 36rootstem
  4. สำหรับเราก็มีผลกระทบกับการสุ่มtreesd = 7
  5. สำหรับsampleฉันพยายามตั้งค่าเอฟเฟกต์แบบสุ่มด้วยsd = 5เท่านั้น
  6. สำหรับสำหรับยังเอฟเอฟสุ่มเพียงเป็นด้วยsitesd = 3

ไม่มีการตั้งค่าความลาดชันเนื่องจากลักษณะที่แท้จริงของตัวแปร

ผลของรูปแบบเอฟเฟกต์แบบผสม:

fit <- lmer(length ~ treatment + organ + tissue + (1|tree/organ/sample), data = trees) 

เป็น:

 Random effects:
 Groups              Name        Variance  Std.Dev. 
 sample:(organ:tree) (Intercept) 9.534e-14 3.088e-07
 organ:tree          (Intercept) 0.000e+00 0.000e+00
 tree                (Intercept) 4.939e+01 7.027e+00
 Residual                        3.603e+02 1.898e+01
Number of obs: 360, groups:  sample:(organ:tree), 180; organ:tree, 60; tree, 30

Fixed effects:
            Estimate Std. Error       df t value Pr(>|t|)    
(Intercept)  79.8623     2.7011  52.5000  29.567  < 2e-16 ***
treatmentT   21.4368     3.2539  28.0000   6.588 3.82e-07 ***
organstem     0.1856     2.0008 328.0000   0.093    0.926    
tissuexylem   3.1820     2.0008 328.0000   1.590    0.113    
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

มันทำงานอย่างไร:

  1. สำหรับการtreatmentตัดโดยไม่ต้องรักษาได้79.8623(ผมตั้งค่าเฉลี่ย70) และมีการรักษามันถูก(เราตั้งค่าเฉลี่ยของ79.8623 + 21.4368 = 101.2991100
  2. สำหรับการtissueมี3.1820ส่วนร่วมในการสกัดกั้นของมารยาทxylemและฉันได้ตั้งค่าความแตกต่างระหว่างphloemและของxylem 3ผลกระทบแบบสุ่มไม่ได้เป็นส่วนหนึ่งของแบบจำลอง
  3. สำหรับorganตัวอย่างจากstemที่เพิ่มขึ้นตัดโดย0.1856- ฉันได้ตั้งค่าไม่แตกต่างกันในลักษณะคงที่ระหว่างและstem rootค่าเบี่ยงเบนมาตรฐานของสิ่งที่ฉันต้องการทำตัวเป็นเอฟเฟกต์แบบสุ่มไม่ได้สะท้อนให้เห็น
  4. treeผลกระทบสุ่มที่มี SD ของโผล่เป็นอย่างดี77.027
  5. สำหรับsampleการเริ่มต้นsdของการ5ถูก underemphasized 3.088เป็น
  6. site ไม่ได้เป็นส่วนหนึ่งของแบบจำลอง

โดยรวมแล้วดูเหมือนว่าโมเดลจะตรงกับโครงสร้างของข้อมูล

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