BaseWsCalculator#
- class mobgap.walking_speed.base.BaseWsCalculator[source]#
Base class for Walking Speed calculators.
This base class should be used for all walking speed estimation algorithms. Algorithms should implement the
calculatemethod. The method should return the instance of the class with thewalking_speed_per_sec_attribute set to the walking speed values per second. Further, the calculate methods should set all inputs of the calculate method to attributes of the same name.We allow that subclasses specify further parameters for the calculate methods (hence, this baseclass supports
**kwargs). However, you should only use them, if you really need them and apply active checks, that they are passed correctly. In 99% of the time, you should add a new parameter to the algorithm itself, instead of adding a new parameter to the calculate method.- Other Parameters:
- data
The raw IMU data of the gait sequence passed to the
calculatemethod.- initial_contacts
The initial contacts passed to the
calculatemethod.- cadence_per_sec
The cadence values provided to the
calculatemethod.- stride_length_per_sec
The stride length values provided to the
calculatemethod.- sampling_rate_hz
The sampling rate of the IMU data in Hz passed to the
calculatemethod.
- Attributes:
- walking_speed_per_sec_
The main output of the walking speed calculation. It provides a DataFrame with the column
walking_speed_mpsthat contains the walking speed values with one value per full second of the provided data. The unit ism/s. The index of this dataframe is namedsec_center_samplesand contains the sample number of the center of the each second.
Notes
You can use the
base_ws_docfillerdecorator to fill common parts of the docstring for your subclass. See the source of this class for an example.Methods
calculate(data, *[, initial_contacts, ...])Calculate per-sec walking speed values in the passed data..
clone()Create a new instance of the class with all parameters copied over.
get_params([deep])Get parameters for this algorithm.
set_params(**params)Set the parameters of this Algorithm.
- __init__(*args, **kwargs)#
- calculate(
- data: DataFrame,
- *,
- initial_contacts: DataFrame | None = None,
- cadence_per_sec: DataFrame | None = None,
- stride_length_per_sec: DataFrame | None = None,
- sampling_rate_hz: float,
- **kwargs: Unpack[dict[str, Any]],
Calculate per-sec walking speed values in the passed data..
- Parameters:
- data
The raw IMU data of a single sensor. We usually assume that this is one gait sequence (i.e. that there are no non-walking periods in the data).
- initial_contacts
The initial contacts of the gait sequence. This should be passed as a DataFrame with the colum
icthat contains the sample number of the initial contacts. We usually assume that the first IC marks the start of the passed gait sequence and the last IC marks the end.- cadence_per_sec
The cadence per sec within the gait sequence. This should be a DataFrame with a
cadence_spmcolumn containing one cadence value per second in the GS.- stride_length_per_sec
This should be a DataFrame with a
stride_length_mcolumn containing one stride length value per second in the GS.- sampling_rate_hz
The sampling rate of the IMU data in Hz.
- Returns:
- self
The instance of the class with the
walking_speed_per_sec_attribute set to the estimated walking speed per second values.
- clone() Self[source]#
Create a new instance of the class with all parameters copied over.
This will create a new instance of the class itself and all nested objects
- get_params(deep: bool = True) dict[str, Any][source]#
Get parameters for this algorithm.
- Parameters:
- deep
Only relevant if object contains nested algorithm objects. If this is the case and deep is True, the params of these nested objects are included in the output using a prefix like
nested_object_name__(Note the two “_” at the end)
- Returns:
- params
Parameter names mapped to their values.