slv.inversion.data.get_slv_observations#

slv.inversion.data.get_slv_observations(sites, site_config, time_range, subset_hours=None, filter_pcaps=True, filter_spikes=False, spike_percentile=0.9, num_processes=1, mobile_obs=None, utc_offset=-7)[source]#

Fetches observations for the pipeline.

Returns DataFrame indexed by (obs_location, obs_time) with a CH4 column. For stationary sites, obs_location is the site name (e.g. “wbb”). For mobile sites, obs_location is the STILT location_id string, which directly matches the simulation location_id so no separate location mapper is needed.

mobile_obs (receptor-paired observations, load_mobile_obs()) supplies the mobile sites’ obs when given: each is keyed exactly like the receptor it pairs with (a crossing’s multipoint location_id, a dwell’s point location_id) at its actual release time. Without it, mobile sites fall back to the old hourly aggregation onto the staged 2-km points, whose keys only match point receptors at those points.

Return type:

DataFrame