Dữ liệu theo chiều dọc: chuỗi thời gian, các biện pháp lặp đi lặp lại, hoặc cái gì khác?


10

Nói một cách dễ hiểu: Tôi có mô hình hồi quy bội hoặc ANOVA nhưng biến trả lời cho mỗi cá nhân là hàm số theo thời gian.

  • Làm thế nào tôi có thể biết biến số nào ở phía bên phải chịu trách nhiệm cho sự khác biệt đáng kể về hình dạng hoặc độ lệch dọc của các đường cong?
  • Đây có phải là một vấn đề chuỗi thời gian, một vấn đề đo lường lặp đi lặp lại, hoặc một cái gì đó hoàn toàn khác?
  • Các thực tiễn tốt nhất để phân tích dữ liệu đó (tốt nhất là trong R, nhưng tôi sẵn sàng sử dụng phần mềm khác)?

Nói một cách chính xác hơn: giả sử tôi có một mô hình nhưng thực sự là một chuỗi các điểm dữ liệu được thu thập từ cùng một cá nhân tại nhiều điểm thời gian , được ghi lại dưới dạng một biến số. Vẽ dữ liệu cho thấy rằng đối với mỗi cá nhân là một hàm bậc hai hoặc theo chu kỳ của thời gian mà phần bù, hình dạng hoặc tần số theo chiều dọc (trong trường hợp theo chu kỳ) có thể phụ thuộc đáng kể vào các hiệp phương sai. Các đồng biến không thay đổi theo thời gian - tức là, một cá nhân có trọng lượng cơ thể hoặc nhóm điều trị không đổi trong suốt thời gian thu thập dữ liệu.yijk=β0+β1xi+β2xj+β3xixj+ϵkyijkktyijkt

Cho đến nay tôi đã thử các Rcách tiếp cận sau :

  1. Manova

    Anova(lm(YT~A*B,mydata),idata=data.frame(TIME=factor(c(1:10))),idesign=~TIME); 
    

    ... trong đó YTmột ma trận có các cột là các điểm thời gian, 10 trong số chúng trong ví dụ này, nhưng nhiều hơn trong dữ liệu thực.

    Vấn đề: điều này coi thời gian là một yếu tố, nhưng thời điểm không khớp chính xác với từng cá nhân. Hơn nữa, có rất nhiều trong số chúng liên quan đến kích thước mẫu để mô hình được bão hòa. Có vẻ như hình dạng của biến trả lời theo thời gian bị bỏ qua.

  2. Mô hình hỗn hợp (như trong Pinheiro và Bates, Mô hình hiệu ứng hỗn hợp trong S và S-Plus )

    lme(fixed=Y~ A*B*TIME + sin(2*pi*TIME) + cos(2*pi*TIME), data=mydata, 
        random=~(TIME + sin(2*pi*TIME) + cos(2*pi*TIME))|ID), method='ML')
    

    ... Đâu IDlà yếu tố nhóm dữ liệu theo từng cá nhân. Trong ví dụ này, phản ứng theo chu kỳ theo thời gian, nhưng thay vào đó có thể có các thuật ngữ bậc hai hoặc các chức năng khác của thời gian.

    Vấn đề: Tôi không chắc chắn liệu mỗi thuật ngữ thời gian có cần thiết hay không (đặc biệt đối với các thuật ngữ bậc hai) và những thuật ngữ nào bị ảnh hưởng bởi hiệp phương sai nào.

    • stepAIC()một phương pháp tốt để lựa chọn chúng?
    • Nếu nó loại bỏ một thuật ngữ phụ thuộc thời gian, nó cũng sẽ loại bỏ nó khỏi randomđối số?
    • Điều gì sẽ xảy ra nếu tôi cũng sử dụng hàm tự tương quan (chẳng hạn như corEXP()) có công thức trong correlationđối số-- tôi có nên tạo công thức đó cho corEXP()giống như hàm trong randomhay chỉ ~1|ID?
    • Các nlmegói hiếm khi được đề cập đến trong bối cảnh của chuỗi thời gian bên ngoài Pinheiro và Bates ... là nó không được coi là rất thích hợp cho vấn đề này?
  3. Lắp mô hình bậc hai hoặc lượng giác cho từng cá nhân, sau đó sử dụng từng hệ số làm biến trả lời cho hồi quy bội hoặc ANOVA.

    Vấn đề: Cần so sánh nhiều hiệu chỉnh. Không thể nghĩ ra bất kỳ vấn đề nào khác khiến tôi nghi ngờ rằng tôi đang xem xét một cái gì đó.

  4. Như đã đề xuất trước đây trên trang web này ( Thuật ngữ cho hồi quy chuỗi thời gian có nhiều hơn một yếu tố dự báo là gì? ), Có ARIMAX và mô hình hồi quy động / mô hình hồi quy động .

    Vấn đề: Các mô hình dựa trên ARMA giả định thời gian rời rạc, phải không? Đối với hồi quy động, tôi đã nghe về nó lần đầu tiên vào ngày hôm nay, nhưng trước khi tôi đi sâu vào một phương pháp mới khác có thể không được sử dụng, tôi nghĩ rằng sẽ rất khôn ngoan khi hỏi những người đã làm điều này trước đây để được tư vấn.


5
@ f1r3br4and Có thể hữu ích nếu bạn thêm một số chi tiết về chính xác dữ liệu của bạn là gì? Tức là, có bao nhiêu trường hợp được đo tại bao nhiêu điểm thời gian? Là các trường hợp trong các điều kiện khác nhau? hay cái gì khác nhau?
Jeromy Anglim

Bạn đã mất tài khoản của bạn? Nếu vậy, vui lòng đăng ký địa chỉ mới, có thể bằng địa chỉ Gmail của bạn để tôi có thể dễ dàng tìm thấy những gì cần hợp nhất.

1
@ f-tussel và @ jeromy-anglim: Dữ liệu là các phép đo không xâm lấn khác nhau được thu thập từ động vật thí nghiệm trong suốt vòng đời tự nhiên của chúng, thường được kết hợp với thông tin tĩnh như kiểu gen, giới tính hoặc loại chế độ ăn chúng được cho ăn. Theo 'nhiều' điểm tôi có nghĩa là từ 20 đến vài trăm. Đó không chỉ là một bộ dữ liệu tôi đang cố gắng phân tích, mà để tìm hiểu cách phân tích một loại dữ liệu đang trở nên rất phổ biến trong nhóm của tôi. Các mô hình hỗn hợp với các yếu tố trong nhóm chỉ được khuyến nghị cho các cỡ mẫu nhỏ hơn?
F1r3br4nd

Câu trả lời:


5

Như Jeromy Anglim đã nói, sẽ giúp biết được số điểm thời gian bạn có cho mỗi cá nhân; như bạn đã nói "nhiều" tôi sẽ mạo hiểm rằng phân tích chức năng có thể là một sự thay thế khả thi. Bạn có thể muốn kiểm tra gói R fda và xem cuốn sách của Ramsay và Silverman .


Phân tích chức năng nghe có vẻ hứa hẹn trong dài hạn, nhưng có vẻ như sẽ có một quá trình học tập trước khi tôi tự tin rằng tôi không nhận được kết quả vô nghĩa hoặc sai lệch. Vì vậy, trong khi tôi đang bắt kịp tốc độ này, các nlmecách tiếp cận dựa trên cơ sở (mục 2 và 3 trong OP) ít nhất có hợp lệ để sử dụng trên dữ liệu trong thời điểm hiện tại không?
F1r3br4nd

2

Kể từ khi đặt ra câu hỏi này, tôi đã đi đến kết luận rằng các mô hình hiệu ứng hỗn hợp với các đối tượng là yếu tố chặn ngẫu nhiên là giải pháp thiết thực cho vấn đề này, tức là tùy chọn # 2 trong bài viết gốc của tôi. Nếu randomđối số lmeđược đặt thành ~1|ID(trong đó IDxác định các quan sát đến từ cùng một đối tượng thử nghiệm) thì một mô hình chặn ngẫu nhiên được trang bị. Nếu nó được đặt thành ~TIME|IDthì một mô hình độ dốc và đánh chặn ngẫu nhiên được trang bị. Bất kỳ công thức bên phải nào chứa các biến khác nhau trong cùng một cá nhân đều có thể được đặt giữa ~|ID, nhưng các công thức quá phức tạp sẽ dẫn đến một mô hình bão hòa và / hoặc các lỗi số khác nhau. Do đó, người ta có thể sử dụng một thử nghiệm tỷ lệ khả năng (anova(myModel, update(myModel,random=~TIME|ID))) để so sánh một mô hình đánh chặn ngẫu nhiên với một mô hình đánh chặn và độ dốc ngẫu nhiên hoặc các mô hình hiệu ứng ngẫu nhiên ứng cử viên khác. Nếu sự khác biệt về sự phù hợp là không đáng kể thì hãy gắn bó với mô hình đơn giản hơn. Nó là quá mức cần thiết cho tôi để đi vào các chức năng trig ngẫu nhiên trong bài viết gốc của tôi.

Vấn đề khác tôi nêu ra là một trong những lựa chọn mô hình. Có vẻ như mọi người không thích lựa chọn mô hình của bất kỳ loại nào, nhưng không ai có bất kỳ lựa chọn thay thế thực tế nào. Nếu bạn mù quáng tin rằng nhà nghiên cứu đã thu thập dữ liệu về các biến giải thích là gì và không liên quan, bạn thường sẽ mù quáng chấp nhận các giả định chưa được kiểm tra của họ. Nếu bạn tính đến mọi thông tin có thể, bạn sẽ thường kết thúc với một mô hình bão hòa. Nếu bạn tùy ý chọn một mô hình và các biến cụ thể vì chúng dễ dàng, bạn sẽ lại chấp nhận các giả định chưa được kiểm tra, lần này là của riêng bạn.

Vì vậy, tóm lại, đối với các biện pháp lặp đi lặp lại, lmecác mô hình tiếp theo là cắt xén thông qua MASS:::stepAIChoặc MuMIn:::dredgenlme:::anova.lmecho đến khi và trừ khi ai đó có ý tưởng tốt hơn.

Tôi sẽ để câu trả lời này trong một thời gian trước khi chấp nhận nó để xem có ai có bất kỳ phản bác nào không. Cảm ơn thời gian của bạn, và nếu bạn đang đọc nó bởi vì bạn có cùng loại câu hỏi tôi có, chúc may mắn và chào mừng bạn đến với lãnh thổ bán chưa được khám phá.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.