今回は実際の時系列データを読み込んでグラフを描いでみます.
濃厚接触者として自宅待機中(現在)の私の心拍変動 (RRI間隔)時系列をサンプルとして使ってください.以下のリンクからダウンロードできます.
https://drive.google.com/file/d/1i0VIooI1-IKAUI9fHi0pEwS9AF6AsHYk/view?usp=sharing
(私は,コロナ関連の研究もしているので,自分が感染する前後の心拍変動の変化を記録しようと,ずっと心拍変動を計測しています.しかし,PCR陰性でしたので,今回は感染しない可能性が高いです.)
基本事項の確認
上のリンクにあるファイルをダウンロードし,自分のパソコンに保存してください.そして,このファイルを保存したフォルダのパスを確認してください (下図).
ここでは,フォルダのパス(仮)を
"C:\Users\chaos\Documents\時系列解析"
読み込むファイル名 (上のリンクからダウンロードしたファイル)を
"chaosRRI.csv"
と仮定して話を進めます.フォルダのパスは仮ですので,各自の環境に合わせて変える必要があります.そのままでは,絶対に動きません.
ファイルを読み込んで,とりあえずグラフ
ファイルを読み込んで,グラフを描いてみます.以下のRスクリプトを実行すると,下の図が描かれます.
使ったRスクリプトは以下のものです.注意点は,
setwd("C:\Users\chaos\Documents\時系列解析")
の"C:\Users\chaos\Documents\時系列解析"の部分を,自分の環境に合わせて書き換えることです.フォルダの区切り文字「\」を,「/」にかえる必要あります.
# "chaosRRI.csv"を保存したフォルダのパスを指定 【重要】 「\」を「/」にかえること setwd("C:\Users\chaos\Documents\時系列解析") # ファイルの読み込み.FNにファイル名を代入 FN <- "chaosRRI.csv" TMP <- read.csv(FN,header=TRUE) # 時刻データの処理 time <- as.POSIXct(TMP$time,tz="Japan") # RRIデータの処理 (as.numericはなくても大丈夫) RRI <- as.numeric(TMP$RRI) # グラフの描画 plot(time,RRI,"l",col=4,xlab="time",ylab="RR interval [ms]",xaxs="i")
使用するコマンドについて,今後,すこしずつ説明していきます.
心拍変動って何?RR間隔って何?
今回の時系列データについて簡単に説明します.このデータは,心臓の拍動時間間隔を表しています.心電図を測ると下の右の図のような波形がえられます.心電図にある上向きの鋭いピークがR波と呼ばれるものです.この波形は心室が電気を発生したときに現れます.このR波のピークの間隔がRR間隔です.
今回描いたRR間隔時系列のグラフは,意外とギザギザしているな,と感じたかもしれません.これは,私が不健康だからではありません.健康な人は,RR間隔が結構ばらつく(ゆらぐ)のです.逆に,年を取ったり,病気があったりすると,このゆらぎは小さくなります.
心臓の拍動リズムのゆらぎは,「心拍変動 (heart rate variability)」と呼ばれています.
私は20年にわたり心拍変動の研究をしてきました.心拍変動の特徴を数理的に読み解くと,健康や病気についていろんなことがわかります.興味があれば,大学院から私の研究室にきてください.