perda.utils.data_summary#

pydantic model perda.utils.data_summary.DataInstanceSummary[source]#

Bases: BaseModel

Summary statistics for a single DataInstance.

Fields:
field header: str [Required]#

Label / ID / C++ name line of the source DataInstance

field count: int [Required]#

Number of data points

field time_unit: Timescale [Required]#

Time unit that all timestamps below are expressed in

field first_timestamp: float = 0.0#

Timestamp of the first data point

field last_timestamp: float = 0.0#

Timestamp of the last data point

field min_value: float = 0.0#

Smallest value

field min_timestamp: float = 0.0#

Timestamp at which the minimum occurs

field max_value: float = 0.0#

Largest value

field max_timestamp: float = 0.0#

Timestamp at which the maximum occurs

field average: float = 0.0#

Time-weighted average over the full range

perda.utils.data_summary.data_instance_summary(data_instance, source_time_unit=Timescale.MS, target_time_unit=Timescale.S)[source]#

Summarize a DataInstance.

Parameters:
  • data_instance (DataInstance) – The DataInstance to summarize

  • source_time_unit (Timescale, optional) – Time unit of data instance. Default is milliseconds.

  • target_time_unit (Timescale, optional) – Time unit used by the summary. Default is Timescale.S.

Returns:

Statistics for the DataInstance. Printing is left to the caller.

Return type:

DataInstanceSummary

Examples

>>> print(data_instance_summary(aly.data["bms.pack.current"]))
>>> data_instance_summary(aly.data["bms.pack.current"]).max_value
perda.utils.data_summary.single_run_summary(data, time_unit=Timescale.S)[source]#

Print overall information about the SingleRunData.

Parameters:
  • data (SingleRunData) – Data structure containing CSV file data

  • time_unit (Timescale, optional) – Time unit used by the summary. Default is Timescale.S.

Return type:

None