我正在尝试为逻辑回归编写自己的预报()函数,以便更好地了解其功能。现在,我已经想出了如何为名义数据编写自己的预测函数。但是,在分类数据方面,我很挣扎:即,我想输入own_predict_function(object, newdata = data.frame(are = 400, gpa = 2.5, rank = '4'))
并获得结果。在此示例中,rank是级别为1,2,3,4的类别变量。
我已经建立了自己的逻辑回归,该回归为y ~ gre + gpa + rank
提供了以下输出
如果我使用内置函数predict(),则只需分解变量等级,然后内置函数会自动知道predict(object, new data = data.frame(rank = "4"))
对应于rank4的回归系数。您对如何编写自己的代码有任何建议/提示吗?非常感谢您的帮助。
答案 0 :(得分:0)
newdata = data.frame( gre= 300, gpa = 2, rank = "2")
newdata$rank <- factor(newdata$rank, levels = 1:4)
mat <- model.matrix(~ gre + gpa + rank, newdata)
mat
对我来说,以下代码生成了正确的矩阵,以便我可以将其与系数相乘并计算线性预测器。