1
$\begingroup$

I am dealing with the below data: \begin{array} {|c|c|}\hline \text{user} & \text{A_PDE} & \text{B_PDE} & \text{C_PDE} & \text{D_PDE} & \text{Sales} & y_\text{pred} & \text{SSE} & \hat{y} \\ \hline 1 & 0.50 & 0.25 & 0 & 1.75 & 0 & 8.660412 & 75.00272 & 0 \\ \hline 2 & 0.00 & 0.00 & 1 & 0.00 & 0 & 4.02256 & 16.18099 & 0 \\ \hline 3 & 0.50 & 1.25 & 1 & 0.75 & 44 & 13.99656 & 900.2064 & 615.8487 \\ \hline 4 & 1.25 & 1.00 & 0 & 0.00 & 0 & 11.02223 & 121.4896 & 0 \\ \hline 5 & 0.00 & 0.75 & 0 & 1.50 & 0 & 7.240974 & 52.43171 & 0 \\ \hline \end{array}

I am trying to calculate the impact of each of the channels A_PDE, B_PDE, C_PDE, D_PDE. However, since Sales = 0 for most of the records, and my model is predicting non zero sales for those records, my $R^2$ value is very low. How can I fix this? I don't think removing the zero sales record from the model would be right.

$\endgroup$
1
$\begingroup$

Dimensionality reduction based answer: You should consider reducing the dimensionality of your data set. There are multiple ways to reduce the dimensionality of your data set

  • Reduction by variance: remove variables with very low variance
  • Reduction by correlation: remove variables that are only weakly correlated with your criterion. For this step, it is important that you split your dataset into training and validation data set before you calculate the correlations or your data results will be contaminated with information from the validation data set.
  • Reduction with principal components analysis (PCA)
  • Reduction with decision trees by feature selection
  • $R^2$ based reduction: Exclude one variable of your data set and calculate the $R^2$. Then exclude another variable of your data set and calculate the $R^2$. Repeat this process for all the variables and remove the variable for which the $R^2$ decreased the least or increased the most. Repeat this process for the reduced data set. Stop when the $R^2$ change is similar for all the variables.
  • $p$-value based reduction: Determine the weights and remove the weights for which the $p$-value is not significant. For this procedure, you have to consider the cumulation of errors and apply Bonferroni correction.

Regression method based answer: An alternative way without reducing the dimensionality would be to use weighted least squares regression and use higher weights on the sales if you really want to predict them more accurately. If your data is highly nonlinear you could also consider using nonlinear regression to capture the nonlinearity with your model.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.