ケィオスの時系列解析メモランダム

時系列解析,生体情報学,数学・物理などの解説です.

【Rで呼吸代謝分析】ミナト医科学AE-100iデータの読み込み

今回は,ミナト医科学のAE-100iで計測されたデータファイルの読み込みについてです.医療関係者と研究者しか使わない計測器だと思いますが,この計測器を使わない人はデータファイルを読むときの参考にしてください.

計測開始時刻を抽出

 AE-100iで計測されたデータファイルの最初の2行は以下のようになってます.

FileNo IDcode Days Time ...
123 hogehoge 10/28/2022 13:34:37 ...
... ... ... ... ...

この2行目に,計測日時"10/28/2022" (2022年10月28日)と,開始時刻"13:34:37"が書いてあるので,その部分を抽出して,開始日時を取り出します.そのためのRスクリプトが以下です.

# ファイル名の指定
FN.RESP <- "ファイル名.csv"
tmp <- read.csv(FN.RESP, header=FALSE, skip=1, stringsAsFactors=FALSE, nrows=1)
TIME.start <- strptime(paste(tmp$V3,tmp$V4),"%m/%d/%Y %H:%M:%S")

このスクリプトのポイントは,strptimeの使い方です.日本では,日付を表すとき,"2022/10/28"のように年月日の順番が一般的です.しかし,海外では,

 "10/28/2022"のように月日年の順番や,

 "28/10/2022"のように日月年の順番で書くこともあります.

そのようなデータを読み込むときには,strptime(..., "%m/%d/%Y %H:%M:%S")のように

%Y 年 (4桁)
%m
%d

の順番を指定して,日付を変換してください.

 上の例では日付の区切り文字が/ですが,"2022-10-28"の場合は,"%Y-%m-%d"のように指定してください.

 時刻については,

%H
%M
%S

を使って形式を指定してください.

METSデータの抽出と計測時刻の設定

 以下のスクリプトを実行すれば,呼気ガス計測で計算したMETSとその計測時刻TIMEが各変数に入ります.

# ファイル名の指定
FN.RESP <- "ファイル名.csv"
# 計測開始日時の情報を抽出
tmp <- read.csv(FN.RESP,header=FALSE,skip=1,stringsAsFactors=FALSE,nrows=1)
TIME.start <- strptime(paste(tmp$V3,tmp$V4),"%m/%d/%Y %H:%M:%S")
# 代謝等量METSの抽出
METS <- read.csv(FN.RESP,header=FALSE,skip=3,stringsAsFactors=FALSE)[,"V12"]
n.tmp <- length(METS)
# 計測時刻
TIME <- TIME.start+10*((1:n.tmp)-1)
# 結果のプロット
plot(TIME,METS,"l",col=2,xaxs="i")

まとめ

 冬になると,深夜に歩きとか自転車で,自宅に帰るとき寒いので,早めに冬着を用意しました.とはいえ,私の気持ちでは早めの準備でしたが,世間的には出遅れたようです.例えば,ダウンジャケットについては,デサントの水沢ダウンとか,ノースフェイスを買おうと思いましたが,通販ではほぼ売り切れていました.好みの色とサイズを買うには,9月には買わないといけないようです.もうちょっと待つと再入荷するかもしれませんが,とりあえず,暖かそうなダウンジャケットを一つ買いました.

 調子にのって高級なものを買っても私には無駄だと思い,ほとんどの防寒着は,昨日,近所のワークマンで買いました.ワークマンでも,私のサイズは,どれも残り1点しかありませんでした.安いので,今年の新着を一通り買いました.これで,寒さを楽しめそうです.