I am working with a data set with 3000+ rows. The response variable p
is binary (1 representing purchase of a specific item, 0 representing no purchase) and I have 10 explanatory variables. Of these, most are binary categorical variables or continuous, but 2 are ordinal. These are:
owned
: number of the item already owned (with values 0,1,2,...,7)visits
: number of times visiting the store (with values 0,1,2,...,5).
Within my data, I have < 100 observations for levels 5, 6 and 7 of owned
(level 7 has only 2 observations) and < 60 for levels 3, 4 and 5 of visits
. I have to perform a logistic linear regression with the data.
My first instinct was to treat these variables as factors, however on looking at the glm summary factors based model I can see that the p values are large for the dummy variables representing levels with few data points. Also, the factors have quite a lot of levels, leading to large parameter numbers.
I am wondering if it's acceptable to instead use the actual data with the values (eg treating them like continuous variables rather than as factors), or if this would be statistically incorrect since non whole values don't make sense in this context? I performed a test comparing these two models of $$H_0: \beta_{\text{owned2}} = 2\beta_{\text{owned1}}, ..., \beta_{\text{owned7}}=7\beta_{\text{owned1}} \text{ and } \beta_{\text{visits2}} = 2\beta_{\text{visits1}}, ..., \beta_{\text{visits5}}=5\beta_{\text{visits1}}$$ against the general alternative and got a non significant p value, suggesting the non factor / restricted model couldn't be rejected.
Alternatively I was also considering merging some of the data categories (eg making them binary or making the categories intervals), however this approach seemed like it might reduce the amount of information I had. I could also for example remove the level 7 observations since there are so few.
So in summary, should I treat this data as factors (using owned <- as.factor(owned)
etc within the glm) or not, and if so how can I statistically justify doing so? Or is there some other approach I am missing?