Japan Association for Medical Informatics

[4-F-1-3] PDF形式で保存される検査レポートから特定の結果値を取得するプログラムの開発

張 冬堯, 和田 聖哉, 中川 彰人, 真鍋 史朗, 武田 理宏, 松村 泰志 (大阪大学大学院医学系研究科 医療情報学)

背景:電子カルテデータの二次利用に際して、後ろ向き研究では、非構造化データの取得が課題となる。検査レポートは、検査種ごとに特徴的なレイアウトとなっていることが多い。目的:PDF形式で保存される検査レポートから、臨床研究で必要な結果値を取得するプログラムを作成し、その精度を検証すること。方法:プログラミング言語はpythonを使用した。PDF形式は、文字列とその座標で定義される。最初に複数ページから目的のページを同定するため、目的ページのみに存在する文字列をマーカとして設定した。唯一のマーカがない場合は複数のマーカあるいはマーカとその座標から同定を行った。次に目的データの取得を行った。目的データが文字列である場合、同じ列のマーカから目的データを取得した。目的データが表形式の値である場合、表の横と縦の第一列をマーカとして座標を標記し、目的データを取得した。スキャンPDF文書については、OCRソフトウェアの精度影響があるため、座標の容認範囲を設定した。最後に、目的データが数値である場合は、取得値があらかじめ設定した範囲に入らない場合はエラーを返すことで精度管理を行った。結果:本プログラムを用い、スキャンPDF文書であるX線骨密度測定検査から腰椎と大腿骨の骨密度値を取得した。目的ページの同定マーカとして「f Left Hip」、「f Right Hip」、「f Lumbar Spine」と「Total」を用いた。患者識別情報は、「Patient ID」、「Scan Data」をマーカとし取得した。骨密度値は表の横「BMD」、「PR」と縦「Neck」、「Total」をマーカとして取得した。延べ598患者、2,735ページのレポートを処理した。目的のデータは1,057ページで記載され、精度チェックでエラーは165件であった。エラーなく取得できたデータ892件は、目視による確認の結果、すべて正しい値が取得できていた。結語:電子カルテに蓄積されるPDF文書から特定の検査値を取得することが可能であった。