Tại thời điểm hiện tại (phiên bản 1.2-10) có vẻ như trường hợp không cân bằng không được hỗ trợ. Tôi đã xem mã và dòng chuẩn bị dữ liệu cuối cùng (bất kể đối số ban đầu của bạn là gì) là như sau:
object <- as.data.frame(split(object, id))
Nếu bạn vượt qua bảng điều khiển không cân bằng, dòng này sẽ làm cho nó cân bằng bằng cách lặp lại các giá trị tương tự. Nếu bảng điều khiển không cân bằng của bạn có chuỗi thời gian với độ dài chia nhau thì thậm chí không có thông báo lỗi nào được tạo ra. Dưới đây là ví dụ từ trang thuần túy:
> data(Grunfeld)
> purtest(inv ~ 1, data = Grunfeld, index = "firm", pmax = 4, test = "madwu")
Maddala-Wu Unit-Root Test (ex. var. : Individual Intercepts )
data: inv ~ 1
chisq = 47.5818, df = 20, p-value = 0.0004868
alternative hypothesis: stationarity
Bảng này được cân bằng:
> unique(table(Grunfeld$firm))
[1] 20
Mất cân bằng nó:
> gr <- subset(Grunfeld, !(firm %in% c(3,4,5) & year <1945))
Hai chuỗi thời gian khác nhau trong bảng điều khiển:
> unique(table(gr$firm))
[1] 20 10
Không có thông báo lỗi:
> purtest(inv ~ 1, data = gr, index = "firm", pmax = 4, test = "madwu")
Maddala-Wu Unit-Root Test (ex. var. : Individual Intercepts )
data: inv ~ 1
chisq = 86.2132, df = 20, p-value = 3.379e-10
alternative hypothesis: stationarity
Một bảng điều khiển mất cân bằng:
> gr <- subset(Grunfeld, !(firm %in% c(3,4,5) & year <1940))
> unique(table(gr$firm))
[1] 20 15
Và thông báo lỗi:
> purtest(inv ~ 1, data = gr, index = "firm", pmax = 4, test = "madwu")
Erreur dans data.frame(`1` = c(317.6, 391.8, 410.6, 257.7, 330.8, 461.2, :
arguments imply differing number of rows: 20, 15