r - Nonempty Numeric vector? -


so run loop: (my data file big, .csv)

for (i in 1:365){  race.date<-as.date(meeting_date,"%d/%m/%y")  indicator1<-race.date<=as.date("31/12/2007","%d/%m/%y")+i model.data<-horse.data[indicator1==true,]  indicator2<-race.date==as.date("31/12/2007","%d/%m/%y")+i+1 test.data<-horse.data[indicator2==true,]  ############################## include.data<-ifelse(model.data$gender=="",0,1)*     ifelse(model.data$race_id==187262,0,1)* ifelse(model.data$race_id==184238,0,1)*     ifelse(model.data$race_id==179250,0,1)* ifelse(model.data$starting_price_decimal=="na",0,1)*     ifelse(model.data$days_since_ran<=100,1,0)* ifelse(model.data$age>=0&model.data$age<=20,1,0)  include.data<-ifelse(is.na(include.data),0,include.data)  #ifelse(model.data$speed_rating<=120,1,0)     #ifelse(model.data$official_rating>=0,1,0) ###############################    include.test.data<-ifelse(test.data$gender=="",0,1)*     ifelse(test.data$race_id==187262,0,1)* ifelse(test.data$race_id==184238,0,1)*     ifelse(test.data$race_id==179250,0,1)* ifelse(test.data$starting_price_decimal=="na",0,1)*     ifelse(test.data$days_since_ran<=100,1,0)* ifelse(test.data$age>=0&test.data$age<=20,1,0)  include.test.data<-ifelse(is.na(include.test.data),0,include.test.data)  test.data.reduced<-test.data[include.test.data==1,]  test.data.reduced$stall_number.f<-as.factor(test.data.reduced$stall_number) test.data.reduced$age.f<-as.factor(test.data.reduced$age) test.data.reduced$win.f<-as.factor(test.data.reduced$win)  ######################### model.data.reduced<-model.data[include.data==1,]  model.data.reduced$stall_number.f<-as.factor(model.data.reduced$stall_number) model.data.reduced$age.f<-as.factor(model.data.reduced$age) model.data.reduced$win.f<-as.factor(model.data.reduced$win)  model<-glm(win.f~days_since_ran+gender+official_rating+stall_number.f+age.f,data=model.data.reduced,family=binomial) #########################  #do predictions model.prob<-predict(model,newdata=test.data.reduced,type="response")  bm.prob<-test.data.reduced$bm_win_prob max(bm_win_prob)  c<-1.3 bet<-ifelse(model.prob>c*bm.prob,1,0) #############only bet on 1 horse per race, highest win.prob out of them? profit<-ifelse(win==1,starting_price_decimal-1,-1) profit<-ifelse(bet==1,profit,0) profit<-ifelse(is.na(profit),0,profit)   } 

and gives me error:

error in family(object)$linkinv(pred) :    argument eta must nonempty numeric vector 

i have no idea start fixing this. thought me trying apply profit vector after every loop got rid of , still happens...

any appreciated.

at point in for loop, glm() not returning variable model.

when passing empty model predict, r generating error. root of problem because glm() not able fit model model.data.reduced. should check size of model.data.reduced being passed glm().

i have run same problem when creating model glm() , passing results predict inside of lapply().


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -