Skip to content

Opta

kloppy.opta

Functions for loading Opta event data.

load

1
2
3
4
5
6
7
load(
    f7_data,
    f24_data,
    event_types=None,
    coordinates=None,
    event_factory=None,
)

Load Opta event data.

PARAMETER DESCRIPTION
f7_data

F7 xml feed containing the lineup information.

TYPE: FileLike

f24_data

F24 or F73 xml feed containing the events.

TYPE: FileLike

event_types

A list of event types to load.

TYPE: Optional[List[str]] DEFAULT: None

coordinates

The coordinate system to use.

TYPE: Optional[str] DEFAULT: None

event_factory

A custom event factory.

TYPE: Optional[EventFactory] DEFAULT: None

RETURNS DESCRIPTION
EventDataset

The parsed event data.

Source code in kloppy/_providers/opta.py
def load(
    f7_data: FileLike,
    f24_data: FileLike,
    event_types: Optional[List[str]] = None,
    coordinates: Optional[str] = None,
    event_factory: Optional[EventFactory] = None,
) -> EventDataset:
    """
    Load Opta event data.

    Args:
        f7_data: F7 xml feed containing the lineup information.
        f24_data: F24 or F73 xml feed containing the events.
        event_types: A list of event types to load.
        coordinates: The coordinate system to use.
        event_factory: A custom event factory.

    Returns:
        The parsed event data.
    """
    deserializer = StatsPerformDeserializer(
        event_types=event_types,
        coordinate_system=coordinates,
        event_factory=event_factory or get_config("event_factory"),
    )
    with open_as_file(f7_data) as f7_data_fp, open_as_file(
        f24_data
    ) as f24_data_fp:
        return deserializer.deserialize(
            inputs=StatsPerformInputs(
                meta_data=f7_data_fp,
                meta_feed="F7",
                meta_datatype="XML",
                event_data=f24_data_fp,
                event_feed="F24",
                event_datatype="XML",
            ),
        )