To address that issue, a better calculation might be to compute possible wait times based on distribution of likely arrival times at the station and return some weighted average.
The issue with using average waiting times (as opposed to picking a particular time and computing actual waiting times) is stations with multiple trains — the N, R and Q might each stop at Union Square once every 10 minutes, but if you're happy boarding any of those, then your average wait time isn't 5 minutes — it's much less.
What I might try is sampling a couple random start times (e.g. 8:00 AM, 8:03 AM, 8:22 AM) and averaging the predictions of all those.
What I might try is sampling a couple random start times (e.g. 8:00 AM, 8:03 AM, 8:22 AM) and averaging the predictions of all those.