| 1234567891011121314151617181920212223242526272829303132333435 |
- import pandas as pd
- from gui.config import *
- class NbusFrameParser:
- def __init__(self, dataframe):
- self._df = dataframe
- def get_pos_ref(self, series):
- return self._parse_data_phase(series, MeasuringPhase.POS_REF, [CN_TOF_X, CN_TOF_Y, CN_TOF_Z])
- def get_pos_begin(self, series):
- return self._parse_data_phase(series, MeasuringPhase.POS_START, [CN_TOF_X, CN_TOF_Y, CN_TOF_Z])
- def get_pos_end(self, series):
- return self._parse_data_phase(series, MeasuringPhase.POS_END, [CN_TOF_X, CN_TOF_Y, CN_TOF_Z])
- def get_acc(self, series):
- return self._parse_data_phase(series, MeasuringPhase.MOVEMENT, [CN_TIME, CN_ACC_X, CN_ACC_Y, CN_ACC_Z])
- def get_gyr(self, series):
- return self._parse_data_phase(series, MeasuringPhase.MOVEMENT, [CN_TIME, CN_GYR_X, CN_GYR_Y, CN_GYR_Z])
- def _parse_data_phase(self, series, phase, columns):
- return (
- self._df.loc[
- (self._df[CN_SER] == series) & (self._df[CN_PHA] == NBUS_DATA_PHASE_MAPPING[phase.value]),
- columns
- ]
- .apply(pd.to_numeric)
- .to_numpy()
- .T
- )
|