es_sfgtools.sonardyne_tools.sv3_qc_operations module

es_sfgtools.sonardyne_tools.sv3_qc_operations.batch_qc_by_day(dataframes: List[DataFrame], date_column: str = 'pingTime') Dict[str, DataFrame]

Batch QC dataframes by day.

Parameters:
  • dataframes (List[pd.DataFrame]) – List of QC dataframes to be batched.

  • date_column (str, optional) – Name of the column containing datetime information, by default ‘timestamp’.

Returns:

Dictionary with keys as date strings (YYYY-MM-DD) and values as concatenated dataframes for that day.

Return type:

Dict[str, pd.DataFrame]

es_sfgtools.sonardyne_tools.sv3_qc_operations.qcjson_to_shotdata(source: str | Path) DataFrame[ShotDataFrame] | None

Convert a QC.pin file into a ShotDataFrame.

Parameters:

source (str | Path) – Path to the QC.pin file in JSON format.

Returns:

  • DataFrame[ShotDataFrame] | None – A validated ShotDataFrame if successful, else None.

  • The QC file is expected to contain a single top-level .pin object with an

  • ”interrogation” entry and one or more range entries (keyed by

  • transponder IDs). This function mirrors the logic of

  • dfop00_to_shotdata by

    • Parsing the interrogation block into SV3InterrogationData

    • Parsing each range block into SV3ReplyData

    • Merging interrogation and range data with merge_interrogation_reply

    • Returning a validated ShotDataFrame.