-
Notifications
You must be signed in to change notification settings - Fork 134
Description
Let's have a conventional setup of a GWR with some local and some global covariates, with X_loc being the local and X_glob being the global covariates.
the MGWR class requires you pass bws,XB,and err from the Sel_BW(coords, Y, X).search() call. But, it doesn't admit that XB is actually X_loc.dot(beta_estimate).
This means that it has no idea which columns of X correspond to those used in X_loc. If you pass a full X matrix into the MGWR class, the .fit() method will just iterate over the passed bandwidths, assume X is X_loc, and peel off the partials. If you have globals in X, then it'll only consider the first len(bw) columns.
I think I can get the behavior I want by inputting a BW vector to be very large for global covariates, but we need to accommodate this.
What's the reason why we have a separate user-facing Sel_BW class? In what instance would a user want to select a bw but not use it to fit a MGWR, especially when fitting the bws requires us to have the beta estimates?