我想用几个预测变量拟合逻辑回归模型,包括多项式(x1 ^ 2,x1 ^ 3等,x2 ^ 2,x2 ^ 3等)和交互作用(x1 * x2,x1 ^ 2 * x2等)条款,直至任意程度。这听起来像是很标准的事情,但是我找不到通用的方法(没有手动列出所有可能的术语)。
数据(有更多的列和行):
head(scaled_train)
Survived Pclass.2 Pclass.3 Sex.male Age SibSp Parch
1 0 -0.5047555 0.9091927 0.7304826 -0.5291034 0.4527410 -0.4682677
2 1 -0.5047555 -1.0982328 -1.3669117 0.5696624 0.4527410 -0.4682677
3 1 -0.5047555 0.9091927 -1.3669117 -0.2544119 -0.4792089 -0.4682677
我要做什么:
fitLR2 <- train(Survived ~ poly(scaled_train[,-1], 2),
data=scaled_train, method='glm',family = 'binomial')
FUN(X,Y,...)中的错误:二进制运算符的非数字参数
我尝试将scaled_train从数据帧强制转换为矩阵:
fitLR2 <- train(Survived ~ poly(as.matrix(scaled_train[,-1]), 2),
data=scaled_train, method='glm',family = 'binomial')
还有另一个错误:
poly(点[[1L]],度,原始=原始,简单=原始&& nd> 1)中的错误:“度”必须小于唯一点的数量
在这种情况下,度数为2,并且scaled_train中肯定有两行以上。