Combine per-location weather frames into one demand-weighted index.
Forms :math:\sum_i \tilde{w}_i X_i where :math:\tilde{w} are the weights normalised to sum to one. All frames must share the same index and the same columns (the identical Open-Meteo schema fetched per location), so the result is a single frame with that schema representing a national, population-weighted weather signal (Zimmermann & Ziel 2025, zimm25a).