BDF (.bdf)

予備知識

    • BDF生理学的信号記録形式.
    • 一般に医学時系列データのレコードの交換,保管に使われる.
    • アプリケーション分野は脳波記録,睡眠ポリグラフ計,筋電図検査,誘発電位,誘発筋電図検査,心電図記録を含む.
    • BDFはBioSemi Data Formatの頭字語である.
    • EDFから派生したバイナリ形式.
    • 複数の同時信号チャンネル,タイムスタンプ付きの注釈,メタ情報を保管する.
    • 不連続時系列が保管できる.
    • 1992年に発表された.

Import

  • Import["file.bdf"]はBDFファイルをインポートし,信号データを数の配列として返す.
  • Import["file.bdf"]は,信号チャンネル chi が場合によっては不連続のレコードのリスト{reci1,reci2,}である{ch1,ch2,}形式の配列を返す.各レコードはデータサンプルのリストとして与えられる.
  • Import["file.bdf",elem]はBDF ファイルより指定された要素をインポートする.
  • Import["file.bdf",{elem,suba,subb,}]はサブ要素をインポートする.
  • Import["file.bdf",{{elem1,elem2,}}]は複数の要素をインポートする.
  • インポート形式はImport["file","BDF"]またはImport["file",{"BDF",elem,}]で指定できる.
  • 一般的な情報は,以下の関数ページを参照のこと.
  • Importファイルからインポートする
    CloudImportクラウドオブジェクトからインポートする
    ImportString文字列からファイルからインポートする
    ImportByteArrayバイト配列からインポートする

Import要素

  • 一般的なImport要素:
  • "Elements" ファイル中の有効な要素とオプションのリスト
    "Summary"ファイルの概要
    "Rules"使用可能なすべての要素の規則のリスト
  • データ表現要素:
  • "Data"不連続なレコードが平坦なリストにまとめられたリストのリストとしてのすべての信号チャンネル
    {"Data",label}名前付き信号チャンネルからのデータ
    "Labels"すべての信号チャンネルの名前
    "LabeledData"それぞれがラベル付きのデータチャンネルを表す規則のリスト
    "RecordsData"リストの配列として与えられたすべての信号チャンネル
  • Import はデフォルトで"Data"要素を使う.
  • Import["file.bdf","Data"]は実質的に個々のチャンネルの不連続レコードを組み合せて平坦なリストにし,データサンプルのパックアレーのリストを返す.
  • Import["file.bdf","LabeledData"]はファイル全体をインポートして{label1->ch1,label2->ch2,}という形の式を返す.
  • Import["file.bdf","RecordsData"]は信号 chi が不連続レコードのリスト{reci1,reci2,}である{ch1,ch2,} という形式のパックアレーを返す.それぞれのレコードはデータサンプルのリストとして与えられる.
  • メタ情報要素:
  • "Annotations"タイムスタンプ付き注釈リスト
    "ChannelCount"同時信号チャンネル数
    "FilterInformation"文字列として与えられる,記録する際に使われる信号フィルタの情報
    "PatientID"患者ID文字列
    "Title"レコードのタイトル(通常ドキュメントの識別に使用される)
    "RecordTimes"記録の開始時間(秒)
    "RecordCount"ファイル中のレコード数
    "RecordLength"レコードの長さ(秒)
    "DataRanges"それぞれの信号チャンネルの物理的なデータ範囲
    "DataUnits"それぞれのチャンネルの物理データに与えられている単位
    "StartDate"記録が始まったローカルの日時
    "Device"各チャンネルの記録に使用される電極等の物理的デバイスの情報
  • Import["file.bdf","Annotations"]{{ti,duri}->{stri1,stri2,},}形式のリストとしてBDFファイルのタイムスタンプ付き注釈リストを与える.
  • BDFではレコードとレコードの間で途切れてもよい.

例題

  (3)

BDFファイルにあるすべての信号チャンネルのラベルを示す:

ラベルとデバイス名を表としてインポートする:

チャンネル「A5」の最初のレコードをインポートし,ListLinePlotを使ってプロットする: