センサーの記録や定期取得したデータをグラフにする前に、時刻の並びを確認します。値が自然に見えても、記録が抜けていたり、同じ日時が二度入っていたりすると、集計や学習の前提が崩れるためです。
ここでは自作の時系列CSV点検ツールを使い、4行のサンプルを点検します。これは動作説明のために作った合成データで、実機の測定結果ではありません。2026年10月15日に、ツールと同じ計算コードで以下の結果を確認しました。
まずサンプルを読み込む
- 点検ツールを開き、「サンプルで試す」を押します。
- 単独CSVの周期点検、日時列timestamp、想定周期60秒、許容ずれ1秒になっていることを確認します。
- 結果の欠測数と、検出結果の種類・行番号を下の表と比べます。
同じ内容をファイルから試す場合は、サンプルCSVを保存して読み込んでください。ヘッダーを1行目として数えます。
timestamp,value
2026-10-01T09:00:00+09:00,10
2026-10-01T09:01:00+09:00,11
2026-10-01T09:03:02+09:00,
2026-10-01T09:01:00+09:00,12
周期60秒・許容1秒で何が見つかるか
| 検出項目 | 結果 | 理由 |
|---|---|---|
| 欠測 | 2件:09:02と09:03 | 09:02の記録がなく、09:03:02は許容1秒を超えるため09:03の記録として扱わない |
| 周期からのずれ | 4行目、+2秒 | 基準09:00から60秒刻みの予定時刻に対して2秒遅い |
| 重複日時 | 5行目 | 3行目と同じ09:01がもう一度現れる |
| 順序逆転 | 5行目 | 直前の09:03:02より過去に戻っている |
| 値の空欄 | value列に1件 | 4行目は日時があるが値がない |
「欠測2件」は行が2行足りないことと同じ意味ではありません。このツールは、観測した範囲内で予定時刻を満たしていない箇所を数えます。時刻が許容範囲外の行は、存在していても予定時刻を埋めません。また、重複と順序逆転は同じ行で起きるため、検出件数を足して異常な行数にすることもできません。
許容ずれを3秒にすると欠測が1件になる
許容ずれを1秒から3秒へ変更すると、09:03:02は09:03の記録として認められます。欠測は09:02の1件になり、周期からのずれの警告は消えます。重複日時、順序逆転、値の空欄は残ります。
この変更はデータを修復していません。点検の基準が変わっただけです。記録装置の仕様や処理に必要な時間精度から許容値を決め、警告を消すためだけに広げないようにします。
修正する前に確認する順番
- 元のファイルを残す。 並べ替えや削除をする前の状態が、原因を調べる手がかりになります。
- 記録周期を確かめる。 ツールは時刻差の中央値で推定しますが、欠測が多いと本来の周期より長く見積もることがあります。収集設定が分かる場合はその値を入力します。
- タイムゾーンをそろえる。 このサンプルの+09:00は日本時間です。明示されたオフセットが優先され、09:02は結果のUTC表記では00:02Zになります。
- 重複の値を比べる。 この例は同じ09:01に11と12があり、どちらが正しいかは日時だけでは決まりません。再送・上書き・別機器の混在を調べます。
- 空欄と欠測を分けて扱う。 補間やゼロ埋めは自動では行いません。値が存在しない理由と、後続の計算への影響を確かめてから決めます。
この点検だけでは分からないこと
- 観測範囲の前後の欠測は数えません。計測開始前・終了後に本来あるべき記録は、収集計画と照合してください。
- 基準時刻が空欄の場合は最初の有効日時が基準です。全記録が同じ秒数だけ遅れている場合、その遅れを見つけるには既知の基準時刻を指定します。
- 不規則なイベントログに一定周期を当てはめると、正常な間隔を欠測と判定します。定周期データかどうかを先に確認してください。
- 日時が正しくても、値の単位、機器の識別子、別テーブルとの結合の正しさまでは保証しません。
- 固定UTCオフセットによる解析です。夏時間をまたぐ現地時刻は、明示的なオフセットを付けて扱ってください。
次に、結合する相手を確認する
時刻の点検が済んだら、別のデータと組み合わせるキーも調べます。馬番の誤結合を見つけた事例では、行が揃っていても別の対象の値を渡していた問題を説明しています。CSV点検と結合監査は、それぞれ異なる不具合を見つける工程です。
自分のCSVを点検する → ファイルはブラウザー内で処理され、サーバーへ送信されません。各ファイル10MB・10万行まで対応します。