コンテンツにスキップ

PAMAP2 Dataset Loader

PAMAP2

PAMAP2データセットに記録されているセンサデータとメタデータを読み込む.

Parameters:

Name Type Description Default
path Path

PAMAP2データセットのパス(path/to/dataset/PAMAP2_Dataset").

required

Attributes:

Name Type Description
supported_x_labels List[str]

ターゲット以外のすべてのラベルのリスト

supported_y_labels List[str]

ターゲットラベルのリスト

load(self, window_size, stride, x_labels=None, y_labels=None, ftrim_sec=10, btrim_sec=10, persons=None, norm=False)

PAMAP2データセットを読み込み,sliding-window処理を行ったデータを返す.

Parameters:

Name Type Description Default
window_size int

フレーム分けするサンプルサイズ

required
stride int

ウィンドウの移動幅

required
x_labels Optional[list]

入力(従属変数)のラベルリスト(ラベル名は元データセットに準拠).ここで指定したラベルのデータが入力として取り出される.

None
y_labels Optional[list]

ターゲットのラベルリスト(仕様はx_labelsと同様)

None
ftrim_sec int

セグメント先頭のトリミングサイズ(単位は秒)

10
btrim_sec int

セグメント末尾のトリミングサイズ(単位は秒)

10
persons Optional[list]

ロードする被験者を指定する.指定されない場合はすべての被験者のデータを返す. 被験者は計9名おり,それぞれに文字列のIDが割り当てられている.

被験者ID: ['subject101', 'subject102', 'subject103', 'subject104', 'subject105', 'subject106', 'subject107', 'subject108', 'subject109']

None
norm bool

(beta) センサデータの標準化を行うかどうかのフラグ.

この機能はあまり確認ができていないので,使用する際は注意を払うこと.

False

Examples:

>>> pamap2_path = Path('path/to/dataset/PAMAP2_Dataset/')
>>> pamap2 = PAMAP2(pamap2_path)
>>>
>>> x_labels = ['IMU_chest_acc1_x', 'IMU_chest_acc1_y', 'IMU_chest_acc1_z']
>>> y_labels = ['activity_id']
>>> subjects = ['subject101', 'subject102', 'subject103']
>>> x, y = pamap2.load(window_size=256, stride=128, x_labels=xlabels, y_labels=y_labels, ftrim_sec=2, btrim_sec=2, persons=subjects)
>>> print(f'x: {x.shape}, y: {y.shape}')
>>>
>>> # > x: (?, 3, 256), y: (?, 1)

Returns:

Type Description
Tuple[numpy.ndarray, numpy.ndarray]

sliding-windowで切り出した入力とターゲットのフレームリスト

x_framesは3次元配列で構造は大まかに(Batch, Channels, Frame)のようになっている. Channelsはx_labelsで指定したものが格納される.

y_framesは2次元配列で構造は大まかに(Batch, Labels)のようになっている. Labelsはy_labelsで指定したものが格納される.

y_framesはデータセット内の値をそのまま返すため,分類で用いる際はラベルの再割り当てが必要となることに注意する.

load(path)

Function for loading PAMAP2 dataset

Parameters:

Name Type Description Default
path Union[pathlib.Path, str]

Directory path of PAMAP2 dataset.

required

Returns:

Type Description
Tuple[List[pandas.core.frame.DataFrame], List[pandas.core.frame.DataFrame]]

Sensor data segmented by activity and subject.

load_raw(path)

Function for loading raw data of PAMAP2 dataset

Parameters:

Name Type Description Default
path Path

Directory path of PAMAP2 dataset("PAMAP2_Dataset").

required

Returns:

Type Description
List[pandas.core.frame.DataFrame]

Raw data of PAMAP2 dataset.

Each item in 'chunks_per_persons' is a part of dataset, which is splited by subject.