我使用polr
函数运行有序逻辑回归。Reglog
是 Dataframe ,Reglog$wtp
是响应变量。这是我的模型中所有变量的列表。
- wtp〈- Reglog$WTP
- perception〈- Reglog$Persepsi
- income〈- Reglog$收入
- age〈- Reglog$usia
1.教育〈- Reglog$usia - experience〈- Reglog$pengalaman
1.主页〈- Reglog$rumah
最初,wtp
是chr
,所以我将其转换为ordered factor
。
Reglog$WTP <- as.ordered(Reglog$WTP)
str(Reglog)
tibble [30 x 7] (S3:
tbl_df/tbl/data.frame)
$ WTP : Ord.factor w/ 3 levels "1"<"2"<"3": 1 1 3 2 2 2 2 1 2 2 ...
结果显示wtp
是一个有序因子,但当我使用polr
运行回归时,它说wtp
不是一个因子。
> model <- polr(wtp~persepsi+pendapatan+usia+pendidikan+pengalaman+pendapatanrt, data = Reglog, Hess = TRUE)
Error in polr(wtp ~ persepsi + pendapatan + usia + pendidikan + pengalaman + :
response must be a factor
我该怎么解决这个问题?谢谢大家。
2条答案
按热度按时间093gszye1#
您可能需要使用
method = c("logistic")
。如果不管用,试试
70gysomp2#
你必须像这样传递响应变量作为因子