Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

edfinfo

EDF ファイルに関する情報の取得

説明

edfinfo オブジェクトを作成して、European Data Format (EDF) または EDF+ ファイルに関する情報を取得します。edfinfo オブジェクトには、ファイル サイズ、データ レコードの数、信号の数、サンプルの数などの情報が含まれています。

作成

説明

info = edfinfo(filename) は、filename で指定された EDF ファイルの edfinfo オブジェクトを返します。

入力引数

すべて展開する

EDF または EDF+ ファイルの名前。文字ベクトルまたは string スカラーとして指定します。

ファイルの場所に応じて、filename は次の形式のいずれかを取ります。

位置

形式

現在のフォルダーまたは MATLAB® パス上のフォルダー

filename でファイルの名前を指定します。

例: 'data.edf'

フォルダー内のファイル

ファイルが現在のフォルダーまたは MATLAB パス上のフォルダーにない場合は、絶対パス名または相対パス名を指定します。

例: 'C:\myFolder\data.edf'

例: 'myDir\myFile.ext'

メモ

edfinfo は EyeLink® EDF ファイルをサポートしていません。

データ型: char | string

プロパティ

すべて展開する

ファイルのプロパティ

このプロパティは読み取り専用です。

ファイル名。string スカラーとして返されます。

例: "ecg_20200411_120.edf"

データ型: string

このプロパティは読み取り専用です。

最終変更日。ファイルが最後に変更された日時を含む string スカラーとして返されます。

例: "11-Apr-2020 15:38:37"

このプロパティは読み取り専用です。

ファイル サイズ (バイト単位)。整数値スカラーとして返されます。

例: 4040992

データ型: double

ヘッダーのプロパティ

このプロパティは読み取り専用です。

データ形式のバージョン。"0" として返されます。

データ型: string

このプロパティは読み取り専用です。

患者識別の詳細。string スカラーとして返されます。患者識別の詳細には、患者 ID、性別またはジェンダー、'dd-MMM-yyyy' 形式の生年月日、および名前が含まれます。

例: "X F X 120 04-JUL-1982"

データ型: string

このプロパティは読み取り専用です。

識別の詳細の記録。string スカラーとして返されます。識別の詳細の記録には、開始日時、記録を行った技術者の ID、および記録に使った装置の ID が含まれる場合があります。

例: "Startdate 04-JUL-1982 X X X"

データ型: string

このプロパティは読み取り専用です。

記録開始日。'dd.MM.yy' 形式の string スカラーとして返されます。

例: "04.07.82"

データ型: string

このプロパティは読み取り専用です。

記録開始時間。'HH.mm.ss' 形式の string スカラーとして返されます。

例: "17.16.37"

データ型: string

このプロパティは読み取り専用です。

ヘッダー サイズ (バイト単位)。整数値スカラーとして返されます。HeaderBytes(256 + NumSignals × 256) バイトで指定されます。最初の 256 バイトは静的ヘッダーに対応し、すべての EDF および EDF+ ファイルに必要です。その他のバイトは、データ レコードに存在する信号の数によって異なります。

例: 2048

データ型: double

このプロパティは読み取り専用です。

EDF+ の中断情報。EDF+ 準拠ファイルに対して "EDF+C" または "EDF+D" として返されます。

  • "EDF+C" — 記録は連続しています。中断はなく、すべてのデータ レコードは連続しているため、各データ レコードの開始時間は、前のレコードの開始時間に記録時間を加えたものと一致します。

  • "EDF+D" — 記録は不連続であり、連続するデータ レコード間に中断があります。

EDF+ に準拠していないファイルの場合、このプロパティは空の文字列 ("") になります。

データ型: string

このプロパティは読み取り専用です。

ファイル内のデータ レコードの数。整数値スカラーとして返されます。

メモ

filename が EDF+ に準拠していない場合、データ レコードの数が不明なときには NumDataRecords-1 に設定できます。filename が EDF+ に準拠している場合、NumDataRecords を正の整数に設定しなければなりません。filenameReserved が空以外の文字列に設定されていて、NumDataRecords-1 に設定されている場合、edfinfo はエラーをスローします。

データ型: double

このプロパティは読み取り専用です。

各データ レコードの持続時間。duration スカラーとして返されます。

データ型: duration

このプロパティは読み取り専用です。

ファイル内の信号の数。整数値スカラーとして返されます。

データ型: double

信号レコードのプロパティ

このプロパティは読み取り専用です。

信号名。長さ NumSignals の string ベクトルとして返されます。

["Thorax 1";"Abdomen 3"]

データ型: string

このプロパティは読み取り専用です。

変換器の詳細。長さ NumSignals の string ベクトルとして返されます。TransducerTypes の各要素には、SignalLabels の対応する信号を取得するために使用される変換器に関する詳細が含まれます。

例: ["AgAgCl electrodes";"thermistor"]

データ型: string

このプロパティは読み取り専用です。

信号のデータ単位。長さ NumSignals の string ベクトルとして返されます。PhysicalDimensions の各要素には、SignalLabels の対応する信号の値を表すために使用される測定単位が含まれます。

例: ["uV";"mV"]

データ型: string

このプロパティは読み取り専用です。

信号の最小物理値。長さ NumSignals の数値ベクトルとして返されます。PhysicalMin の各要素には、SignalLabels の対応する信号の最小物理値が含まれています。

データ型: double

このプロパティは読み取り専用です。

信号の最大物理値。長さ NumSignals の数値ベクトルとして返されます。PhysicalMax の各要素には、SignalLabels の対応する信号の最大物理値が含まれます。

データ型: double

このプロパティは読み取り専用です。

信号の最小デジタル値。長さ NumSignals の数値ベクトルとして返されます。DigitalMin の各要素には、SignalLabels の対応する信号の最小デジタル値が含まれます。

データ型: double

このプロパティは読み取り専用です。

信号の最大デジタル値。長さ NumSignals の数値ベクトルとして返されます。DigitalMax の各要素には、SignalLabels の対応する信号の最大デジタル値が含まれます。

データ型: double

このプロパティは読み取り専用です。

信号のサンプル数。長さ NumSignals の数値ベクトルとして返されます。NumSamples の各要素には、SignalLabels の対応する信号のサンプル数が含まれます。

データ型: double

このプロパティは読み取り専用です。

信号のデータ単位。長さ NumSignals の string ベクトルとして返されます。Prefilter の各要素には、SignalLabels の対応する信号を前処理するために使用されるフィルターに関する詳細 (該当する場合) が含まれます。

例: ["HP:10Hz LP:80Hz N:60Hz";"HP:0.1Hz LP:90Hz N:60Hz"]

データ型: string

このプロパティは読み取り専用です。

追加の信号情報。長さ NumSignals の string ベクトルとして返されます。SignalReserved の各要素には、SignalLabels の対応する信号に関する追加情報 (該当する場合) が含まれます。

データ型: string

このプロパティは読み取り専用です。

信号レコードに存在する注釈。次の変数を含む timetable として返されます。

  • Onset — 注釈が発生した時間。ファイルの開始時間から経過した秒数を示す持続時間として表されます。

  • Annotation — 注釈テキストを含む文字列。

  • Duration — 注釈によって記述されたイベントの持続時間を示す duration スカラー。ファイルで注釈の持続時間が指定されていない場合、この変数は NaN として返されます。

データ型: table

すべて折りたたむ

関数 edfinfo を使用して、example.edf ファイルに関する情報を含む edfinfo オブジェクトを作成します。

info = edfinfo('example.edf')
info = 
  edfinfo with properties:

              Filename: "example.edf"
           FileModDate: "14-Apr-2020 20:55:44"
              FileSize: 31488
               Version: "0"
               Patient: "patient1"
             Recording: "Startdate not recorded"
             StartDate: "27.03.20"
             StartTime: "10.00.00"
           HeaderBytes: 768
              Reserved: ""
        NumDataRecords: 6
    DataRecordDuration: 10 sec
            NumSignals: 2
          SignalLabels: [2x1 string]
       TransducerTypes: [2x1 string]
    PhysicalDimensions: [2x1 string]
           PhysicalMin: [2x1 double]
           PhysicalMax: [2x1 double]
            DigitalMin: [2x1 double]
            DigitalMax: [2x1 double]
             Prefilter: [2x1 string]
            NumSamples: [2x1 double]
        SignalReserved: [2x1 string]
           Annotations: [0x2 timetable]

ファイルの 2 番目の信号に関する次の情報を表示します。

  • 名前

  • データが表現される物理単位

  • データの最小および最大物理値

  • 含まれているサンプル数

nsig = 2;

disp([info.SignalLabels(nsig) info.PhysicalDimensions(nsig) ...
    info.PhysicalMin(nsig) info.PhysicalMax(nsig) info.NumSamples(nsig)])
    "ECG2"    "mV"    "-229.048"    "229.041"    "1280"

ヒント

関数 get を使用して、edfinfo オブジェクトを MATLAB 構造体に変換できます。次に例を示します。

info = edf('example.edf');
strc = get(info)

参照

[1] Kemp, Bob, Alpo Värri, Agostinho C. Rosa, Kim D. Nielsen, and John Gade. “A Simple Format for Exchange of Digitized Polygraphic Recordings.” Electroencephalography and Clinical Neurophysiology 82, no. 5 (May 1992): 391–93. https://doi.org/10.1016/0013-4694(92)90009-7.

[2] Kemp, Bob, and Jesus Olivan. "European Data Format 'plus' (EDF+), an EDF Alike Standard Format for the Exchange of Physiological Data." Clinical Neurophysiology 114, no. 9 (2003): 1755–1761. https://doi.org/10.1016/S1388-2457(03)00123-8.

参考

| | | |

外部の Web サイト

R2020b で導入