var1<-sample(c('A', 'B', 'C'), replace = T, size=100)
var2<-sample(c(0,1), size=100, replace=T)
var3<-rnorm(100, mean=10, sd=2)
df<-data.frame(var1, var2, var3)
library(nnet)
m1<-multinom(var1~var2, data=df)
m2<-multinom(var1~var3, data=df)
m3<-multinom(var1~var2+var3, data=df)
#install.packages('DescTools')
library(DescTools)
PseudoR2(m1, which='all')
我得到了这个错误代码:
as.data.frame.default中的错误( data,可选= TRUE):无法将类‘’函数‘’强制到一个data.frame之外:警告消息: in PseudoR2(m1,它= "all"):无法找到用于计算PseudoR2 null模型的多个对象的模型或数据元素。将与新的“df”计算值匹配为空模型。确保对象自初始调用以来没有更改,或者尝试使用“model=TRUE”运行多个对象
但是,m1
是一个multinom
对象,我认为它的格式很好,不是吗?
发布于 2020-09-25 07:08:52
您需要设置model=T
var1<-sample(c('A', 'B', 'C'), replace = T, size=100)
var2<-sample(c(0,1), size=100, replace=T)
var3<-rnorm(100, mean=10, sd=2)
df<-data.frame(var1, var2, var3)
library(nnet)
m1<-multinom(var1~var2, data=df, model=T)
m2<-multinom(var1~var3, data=df)
m3<-multinom(var1~var2+var3, data=df)
#install.packages('DescTools')
library(DescTools)
PseudoR2(m1, which='all')
PseudoR2(m1, which='all')
McFadden McFaddenAdj CoxSnell Nagelkerke AldrichNelson VeallZimmermann Efron McKelveyZavoina Tjur
0.00623116 -0.03030106 0.01355262 0.01526082 NA NA NA NA NA
AIC BIC logLik logLik0 G2
225.62024056 236.04092130 -108.81012028 -109.49238485 1.36452914
>
https://stackoverflow.com/questions/64066541
复制相似问题