对比度仅适用于具有2级或更多级别的因素

时间:2017-01-10 12:51:50

标签: r logistic-regression glm

我在R中编程,在执行逻辑回归时遇到此错误:

Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) : 
  contrasts can be applied only to factors with 2 or more levels

这是我正在使用的代码,我检查了所有因素,没有人少于两个级别。

c1<-"campaign_type"
c2<-"campaign_status"
c3<-"advertiser_cost"
output.var<-"Success"

names(train)
 [1] "campaign_type"         "campaign_status"       "connection_type"       "cpa_price"             "impressions"          
 [6] "clicks"                "conversions"           "advertiser_cost"       "cpa_revenue"           "profit"               
[11] "revenue_ecpm"          "cost_ecpm"             "profit_ecpm"           "ctr"                   "conversion_rate"      
[16] "click_conversion_rate" "margin"                "manager"     
      "sales_manager"         "Success"    

 > glm(output.var~c1+c2+c3,family=binomial('logit'),data=train)
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) : 
  contrasts can be applied only to factors with 2 or more levels



> class(train[,c1])
[1] "factor"
> unique(train[,c1])
[1] CPA Optimized_CPM CPM          
Levels: CPA CPM Optimized_CPM
> class(train[,c2])
[1] "factor"
> unique(train[,c2])
[1] Launched Paused  
Levels: Launched Paused
> class(train[,c3])
[1] "numeric"
> class(train[,output.var])
[1] "integer"
> unique(train[,output.var])
[1] 0 1  

正如我所说,我的所有因素都有2级或更多级别。

有人能告诉我为什么会收到此错误吗?

这是数据的链接地址: https://drive.google.com/file/d/0B-s59D9jsTcnVVppSlNQVE5PMGM/view?usp=sharing

由于

0 个答案:

没有答案