es_sfgtools.prefiltering.utils module
- es_sfgtools.prefiltering.utils.difficult_acoustic_diagnostics(df)
Filter for “difficult” level acoustic diagnostics.
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
- Returns:
Filtered DataFrame with “difficult” level acoustic diagnostics.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_SNR(df, snr_min=12)
Remove data based on SNR threshold. GOOD: > 20 OKAY: 12-20 DIFFICULT(default): < 12
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
snr_min (int, optional) – Minimum SNR threshold. Defaults to 12.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_acoustic_diagnostics(df, snr_min=12, dbv_min=-36, dbv_max=-3, xc_min=45)
Remove data based on acoustic diagnostics (SNR, DBV, XC)
Quality thresholds: - Good: SNR>20, DBV(-3 to -26), XC>60 - Okay: SNR(12-20), DBV(-26 to -36), XC(45-60) - Difficult (default): SNR<12, DBV(<-36 or >-3), XC<45
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
snr_min (int, optional) – Minimum SNR threshold.
dbv_min (int, optional) – Minimum DBV threshold.
dbv_max (int, optional) – Maximum DBV threshold.
xc_min (int, optional) – Minimum XC threshold.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_dbv(df, dbv_min=-36, dbv_max=-3)
Remove data based on DBV threshold. GOOD: -3 to -26 OKAY: -26 to -36 DIFFICULT (default): <-36 or >-3
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
dbv_min (int, default -36) – Minimum DBV threshold.
dbv_max (int, default -3) – Maximum DBV threshold.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_ping_replies(df, min_replies=3)
Require minimum number of replies for each ping (e.g., 3 replies for the 3 transponders).
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
min_replies (int, optional) – Minimum number of replies required. Defaults to 3.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_pride_residuals(df, kinPostionTDBUri: str, start_time: datetime, end_time: datetime, max_wrms=15)
Filter Pride PPP data based on wrms residuals in position tileDB array.
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
kinPostionTDBUri (str) – URI for the KinPosition tileDB array.
start_time (datetime) – Start time for filtering.
end_time (datetime) – End time for filtering.
max_wrms (int, optional) – Maximum WRMS threshold in millimeters. Defaults to 15.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_shotdata(survey_type: str | SurveyType, site: Site, shot_data: DataFrame, kinPostionTDBUri: str, start_time: datetime, end_time: datetime, base_config: FilterConfig | None = None, custom_filters: dict | None = None) DataFrame
Filter the shot data based on the specified acoustic level and minimum ping replies.
- Parameters:
survey_type (str) – The type of survey.
site (Site) – The site metadata.
shot_data (pd.DataFrame) – The shot data to filter.
kinPostionTDBUri (str) – The URI of the kinematic position TileDB array.
start_time (datetime) – The start time of the survey.
end_time (datetime) – The end time of the survey.
custom_filters (dict, optional) – Custom filters to apply.
- Returns:
The filtered shot data.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_wg_distance_from_center(df: DataFrame, array_center_lat: float, array_center_lon: float, max_distance_m: float = 150) DataFrame
Remove data where waveglider is > x meters from array center. Typically used for center surveys.
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
array_center_lat (float) – Latitude of the array center.
array_center_lon (float) – Longitude of the array center.
max_distance_m (float, optional) – Maximum distance from center in meters, by default 150.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.filter_xc(df, xc_min=45)
Remove data based on XC threshold. GOOD: > 60 OKAY: 45-60 DIFFICULT (Default): < 45
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
xc_min (int, default 45) – Minimum XC threshold.
- Returns:
Filtered DataFrame.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.good_acoustic_diagnostics(df)
Filter for “good” level acoustic diagnostics.
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
- Returns:
Filtered DataFrame with “good” acoustic diagnostics.
- Return type:
pd.DataFrame
- es_sfgtools.prefiltering.utils.ok_acoustic_diagnostics(df)
Filter for “ok” level acoustic diagnostics.
- Parameters:
df (pd.DataFrame) – DataFrame with shotdata.
- Returns:
Filtered DataFrame with “ok” level acoustic diagnostics.
- Return type:
pd.DataFrame