我正在尝试通过gamlss函数将对数正态分布拟合到某些数据。
y
是我的因变量,x
是解释变量。
据我所知,模型gamlss(y~x, family=LOGNO())
应该是方法。
但是,公式如何用估计系数计算我的拟合值? 我的意思是在普通的线性回归中,你有:
即使我不想自己计算值但是使用fitted()
- 命令,我很惊讶为什么y-fitted(fm)
与residuals(fm)
不一样。
但我最大的问题是,在帮助文件中,我读到该软件包还提供“将分发的所有参数建模为解释变量的函数”,这正是我的意思想要实现。
所以我想说我有以下内容:
因此:
那么我有什么方法可以调整命令以确保mu
和sigma
取决于x
?
我想我必须在我的命令中加入sigma.formula=~
,但我真的不知道如何,而且根本没有mu.formula=~
。
这是我的代码:
library(gamlss)
y<-c(1495418, 1684470, 1997120, 1901727, 2070008, 2213829, 2364602, 2333710, 2491570, 2540110, 2620947, 2761075, 2943475, 2854544)
x<-c(3932300, 4119100, 4354400, 4483752, 4585303, 4803234, 4989701, 5177605, 5380031, 5494672, 5606376, 5783627, 6015992, 6171564)
fm<-gamlss(y~x,familiy=LOGNO())
summary(fm)
fitted(fm)
residuals(fm)
y-fitted(fm)
fitted(fm,"mu")
fitted(fm,"sigma")