# TODO: ``haniwers run2csv``（データを前処理する）

```console
$ haniwers run2csv --help
```

:::{literalinclude} ./help/help-run2csv
:::

## 基本コマンド

```console
$ haniwers run2csv 20 --save
```

ラン番号を指定して、測定データを解析用データに変換します。
ラン番号が存在しない場合は、エラーを表示して終了します。

データをファイルに書き出す場合には``--save``オプションを使ってください。
デフォルトは、うっかり上書きすることを防ぐため``--no-save``です。

ランの記録はスプレッドシートで管理しています。
スプレッドシートをCSV形式で出力し、コマンドを実行するパスの直下に保存してください。
デフォルトのファイル名は`runs.csv`です。


## 前処理の内容

``add_time``
: 時刻に関する情報を追加します。
  時間情報を``datetime``オブジェクトに変換します。
  ``tz-naive``な場合は``tz-aware``に変換します。
  測定時刻と実時刻が（大きく）ずれてしまった場合に調整します。

``add_hit``
: 各レイヤーのヒットの有無を判定します。
  ``hit_top`` / ``hit_mid`` / ``hit_btm`` のカラムを追加します。

``add_hit_type``
: イベントのヒットパターンを計算します。
  ``hit_top * 4 + hit_mid * 2 + hit_btm`` で求めた値を``hit_type``に追加します。

``resample_data``
: 指定した時間でデータを再集計します。
