gedai.preprocess

Pre-process ADS-B data and create a pandas DataFrame.

gedai.preprocess.add_metadata_columns(df: DataFrame, metadata: dict, source: str) DataFrame[source]

Add relevant metadata fields to a DataFrame.

Parameters:
  • df (pd.DataFrame) – DataFrame.

  • metadata (dict) – Associated metadata like ICAO, registration, timestamp.

  • source (str) – Source of the ADS-B data (e.g., “adsb_exchange”).

Returns:

DataFrame with metadata, modified in place.

Return type:

pd.DataFrame

gedai.preprocess.create_dataframe(data: dict, metadata: dict, source: str) DataFrame[source]

Create a standardised DataFrame from raw ADS-B data and metadata such that it can be loaded into traffic.

Parameters:
  • data (dict) – Parsed JSON data, including ‘trace’.

  • metadata (dict) – Associated metadata like ICAO, registration, timestamp.

  • source (str) – Source of the ADS-B data (e.g., “adsb_exchange”).

Returns:

A standardised, processed DataFrame.

Return type:

pd.DataFrame

gedai.preprocess.standardise_columns(df: DataFrame, source: str) DataFrame[source]

Standardise column names and order of a DataFrame in place for internal consistency.

Parameters:
  • df (pd.DataFrame) – Raw trace DataFrame.

  • source (str) – Source of the ADS-B data (e.g., “adsb_exchange”).

Returns:

DataFrame with consistent column names, modified in place.

Return type:

pd.DataFrame

Raises:

ValueError – If the source is unknown or unsupported.