我正在尝试对smooth.spline
中的解释变量使用glm
转换(logit回归)。
我收到错误消息是因为smooth.spline
无法使用NA。
这是我的代码:
LogitModel <- glm(dummy~ smooth.spline(A) + B + C
,family = binomial(link = "logit"), data = mydata)
我该如何处理(不更改mydata?)
答案 0 :(得分:1)
您可以使用自然包含样条线的广义加性模型(GAM)。例如,您可以使用netwire
包,作为它们处理gam
的副作用。请参见下面的代码:
NA
输出:
library(gam)
set.seed(123)
data(kyphosis)
# simulation of NA
NAs <- matrix(c(sample(81, 4), 1:4), byrow = FALSE, ncol = 2)
kyphosis_NA[NAs] <- NA
# gam
m_NA <- gam(Kyphosis ~ s(Age,4) + Number + Start, family = binomial, data=kyphosis_NA)
summary(m_NA)