前提・実現したいこと
Python3を使用しています。(Numpy,pandasインストール済み)
現在、時間と位置を記録するプログラムがあります。
0.05秒刻みで位置のデータを出力しています。
このプログラムは、TSVファイルで出力するようになっています。
実際は数千行になります。
以下その内容。(左が位置、右列が時間です。)
3.2741 0
3.2741 0.05
3.218 0.1
3.218 0.15
3.218 0.2
3.2741 0.25
3.2741 0.3
3.2741 0.35
3.218 0.4
3.2741 0.45
3.2741 0.5
3.218 0.55
3.218 0.6
3.218 0.65
0.05秒間に急激な変化をしたときのみを検知して、そこから100行ほどを別ファイルに出力する
といったプログラムを書きたいと思っています。
例えば100秒間のうち3回衝撃を与えると、15秒3回分(一回分=0.05*100=5秒)のファイルがそれぞれ出力される
というプログラムを書きたいです。
急激な変化と判断する基準は以下の通りです。
0.05秒間の位置の変化が閾値より大きくなったら急激な変化とします。
1行前の位置から現在見ている値を引いた絶対値をXとすると
if X>10:などの条件式にして検知する予定です。
出力する100行の中に急激な変化が起こってもそれは無視して、出力した後の101行目にあたる場所から再度解析する
というようなプログラムにする予定です。
何行もあるデータを比べる方法がわかりません。
例えば
1行目のデータと2行目のデータ持ってきて比べます。
↓
急な変化なし。2行目と3行目のデータを持ってきて比べます。
「〇〇.TSV」ファイルの何行目のデータを持ってきてその数値を比べる段階の
持ってくる方法がわかりません。
どのような書き方をすれば実現できるでしょうか。
初心者なのでなるべく細かく教えていただけると助かります。
よろしくお願いします。
試したこと
for文をうまく使えばできるとのアドバイスをもらい考えていますが
全く分かりません。
補足情報(FW/ツールのバージョンなど)
現在、位置、時間のデータはTSV形式ですが、CSVや行列に直すことは可能です。

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/11 05:47
退会済みユーザー
2019/01/11 06:39