我正在使用包 quantreg 在 R 中执行分位数回归。我的数据集包含 12,328 个观测值,范围从 0.12 到 330。我的数据的时间点并不完全连续;所有数据都属于从 73 到 397 的几十个 bin 之一。
当我使用 lm() 函数对该数据执行线性回归时,我能够使用最多 4 个的多项式来执行此操作:
lm(Y~poly(X,3,raw=TRUE),data=mydata)
但是,使用包 quantreg 和 rq() 命令,我不能使用任何多项式。一个简单的回归就可以了:
rq(Y~X,data=mydata,tau=.15)
但是一旦我进入多项式,就没有骰子了。当我输入这个:
rq(Y~poly(X,2,raw=TRUE),data=mydata,tau=.15)
我收到以下错误消息:
Error in rq.fit.br(x, y, tau = tau, ...) : Singular design matrix
我已经阅读了奇异矩阵,我认为这可能有两个原因:(1)我在每个轴上只有一个变量,或者(2)我的数据被分箱/Y 变量不是真正连续的。
谁能告诉我为什么我会收到这个错误?
PS - 这是图表的外观:
