HHAR Dataset Loader
HHAR
HHARデータセットに記録されているセンサデータとメタデータを読み込む.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Union[str,Path] |
HHARデータセットのパス. Phones_[accelerometer,gyroscope].csv, Watch_[accelerometer,gyroscope].csvが置かれているディレクトリパスを指定する. |
required |
load(self, sensor_types, device_types, window_size, stride, subjects=None)
HHARデータセットを読み込み,sliding-window処理を行ったデータを返す.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
sensor_type |
|
センサタイプ."acceleromter" or "gyroscope" |
required |
device_type |
|
デバイスタイプ."Phone" or "Watch" |
required |
window_size |
int |
フレーム分けするサンプルサイズ |
required |
stride |
int |
ウィンドウの移動幅 |
required |
subjects |
Optional[list] |
ロードする被験者を指定する.指定されない場合はすべての被験者のデータを返す. 被験者は計9名おり,それぞれに文字列のIDが割り当てられている. 被験者ID: ['a','b','c','d','e','f','g','h','i'] |
None |
Examples:
>>> hhar_path = Path('path/to/dataset')
>>> hhar = HHAR(hhar_path)
>>>
>>> # 被験者'a','b','c','d'のみを読み込む
>>> subjects = ['a','b','c','d']
>>> x, y = hhar.load(sensor_types='accelerometer', device_types='Watch', window_size=256, stride=128, subjects=subjects)
>>> print(f'x: {x.shape}, y: {y.shape}')
>>>
>>> # > x: (?, 3, 256), y: (?, 4)
Returns:
Type | Description |
---|---|
Tuple[numpy.ndarray, numpy.ndarray] |
sliding-windowで切り出した入力とターゲットのフレームリスト x_framesは3次元配列で構造は大まかに(Batch, Channels, Frame)のようになっている. Channelsは加速度センサの軸を表しており,先頭からx, y, zである. y_framesのshapeは(*, 4)であり,axis=1ではUser, Model, Device, Activityの順でデータが格納されている. y_framesはデータセット内の値をそのまま返すため,分類で用いる際はラベルの再割り当てが必要となることに注意する. |
load(path, sensor_type, device_type='Watch')
Function for loading HHAR dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Union[pathlib.Path, str] |
Directory path of HHAR dataset. |
required |
sensor_type |
str |
"accelerometer" or "gyroscope". |
required |
device_type |
str |
"Watch" or "Phone". |
'Watch' |
Returns:
Type | Description |
---|---|
Tuple[List[pandas.core.frame.DataFrame], List[pandas.core.frame.DataFrame]] |
Sensor data segmented by activity, subject, and device. |
load_raw(path, sensor_type, device_type='Watch')
Function for loading raw data of HHAR dataset
Parameters:
Name | Type | Description | Default |
---|---|---|---|
path |
Path |
Directory path of HHAR dataset. |
required |
sensor_type |
str |
"accelerometer" or "gyroscope". |
required |
device_type |
str |
"Watch" or "Phone". |
'Watch' |
Returns:
Type | Description |
---|---|
DataFrame |
raw data of HHAR dataset |