Predict Based on Prediction? I am working on a binary classification task with a pretty straightforward input set of numeric features. One of these features is particularly good, but it cannot be used in real life because it's a measure that is obtained after the fact has occurred. Is it possible to predict this measure based on the other features, and then build a model including this predicted measure?
In more detail, I am building a classifier for this challenge from the UCI repo: https://archive.ics.uci.edu/ml/datasets/bank+marketing
The feature that cannot be used is the call duration because one can't know how long a call will last before it takes place. So I am wondering, could I build a regression model or at least a binned classifier to predict how long a call will last before it takes place, then feed this prediction to the model and replace the provided call duration feature?
 A: Let's formulate a problem. You have two sets of features $X_t$ and $Z_t$, where the former is available in future $X_{t+1}$, while the latter is not $Z_{t+1}=?$ 
You want to forecast some quantity $Y_t$ conditional on these features: $\hat Y_{t+1}=f(X_{t+1},Z_{t+1})$. The trouble is that $Z_{t+1}$ is not known, so you suggest to first obtain $\hat Z_{t+1}=g(X_{t+1},Z_t)$, then plug it to your first model $\hat Y_{t+1}=f(X_{t+1},g(X_{t+1},Z_t))$
Now you can use information that is available in future, i.e. $X_{t+1}$.
First, this can be done, and is done in practice. 
However, conceptually, it is similar to simply building a model on what's available in future:
$$Y_{t+1}=h(X_{t+1})$$
So, isn't it better to simply do the second model $h()$, instead of the two step approach with $f()$? It depends. On one hand the second approach is simpler, and thus can be more robust. On the other hand, the first approach may allow you to capture something that is not easy to incorporate in the second model.
I run into this issue all the time, and pick different path case by case. 
Here's a trivial example where you want to do the second approach. Suppose, you're limited to linear modeling: $y=X\beta_x+Z\beta_z$ and $Z=X\beta_{zx}$, then you have $y=X\beta_x+X\beta_{zx}\beta_z=X(\beta_x+\beta_{zx}\beta_z)$ This is equivalent to the second approach of modeling on just $X_t$, so you don't bother and do $y=X\beta$ directly.
