傷病名コード化方法及び傷病名コード化プログラム
【課題】 文字列で記載された傷病名のコード化を効率的に行うための傷病名コード化方法及び傷病名コード化プログラムを提供する。
【解決手段】 管理コンピュータ21が、修飾語マスタデータ記憶部32の修飾語マスタと、傷病名マスタデータ記憶部31の傷病名マスタとを用いて辞書(電子辞書)を作成する。そして、未コード化傷病名の構成文字を1文字ずつ抽出し、抽出した構成文字を先頭文字として記録された語彙候補を抽出し、この語彙候補に対して未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて傷病名全体を過不足なく表す語彙候補の組合せを生成し、生成された組合せに基づいて未コード化傷病名をコード化する。
【解決手段】 管理コンピュータ21が、修飾語マスタデータ記憶部32の修飾語マスタと、傷病名マスタデータ記憶部31の傷病名マスタとを用いて辞書(電子辞書)を作成する。そして、未コード化傷病名の構成文字を1文字ずつ抽出し、抽出した構成文字を先頭文字として記録された語彙候補を抽出し、この語彙候補に対して未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて傷病名全体を過不足なく表す語彙候補の組合せを生成し、生成された組合せに基づいて未コード化傷病名をコード化する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文字列で記載された傷病名をコード化するための傷病名コード化方法及び傷病名コード化プログラムに関し、特に医療機関が傷病名をコード化してカルテの管理を行う電子カルテシステム、もしくは保険者や審査支払機関がレセプト(診療報酬明細書)に記載された傷病名をコード化してレセプトに関する処理を行うレセプト電算処理システム等で用いる傷病名コード化方法及び傷病名コード化プログラムに関する。
【背景技術】
【0002】
個人が医療機関で医療行為を受けた場合、個人が自己負担分をその場で医療機関に対して支払うとともに、医療機関が保険団体に対してレセプト(診療報酬明細書)を発行して個人負担以外の医療費の支払いを請求する。そして、審査支払機関がレセプトに誤りがないかを審査し、審査を通ったレセプトを保険団体が受け付けて医療機関に対して支払いを行う。
【0003】
従来は紙媒体のレセプトでこの処理を行っていたが、効率化のため、1999年4月から厚生労働省を中心に審査支払機関の「レセプト電算処理システム」の受入体制が整備され、各病院がレセプトを電子媒体で提出することが可能となった。
【0004】
電子化されたレセプトでは、傷病名の記載には傷病名コード及び修飾語コードを用いることが基本であるが、傷病名を文字列で表記することも許容されている。
このように傷病名が文字列で記載されたレセプトデータを取り扱う場合に文字列で記載された傷病名のコード化を効率的に行うためのシステムが開発されている(例えば、特許文献1参照。)。この特許文献1に開示されているシステムでは、レセプトに記載された傷病名に対応する文字列を傷病名マスタと照合する前に、レセプト記載傷病名文字列上で起こり得る様々な異表記をマスタ傷病名の表記文字列に変換する。そして、変換後の文字列でマスタ傷病名を検索し、マスタ傷病名が複数検索された場合にその出現位置関係によって採否を決定し、その後、残余の文字列に対して修飾語の検出を試みる。
【特許文献1】特開2002−366648号公報(第3−17頁)
【発明の開示】
【発明が解決しようとする課題】
【0005】
上記のシステムでは、マスタ傷病名が複数検出された場合に修飾語を考慮せずに先にマスタ傷病名を決定する。この場合、コード化すべき傷病名を過不足なくコード化できるマスタ傷病名と修飾語との組合せが存在しても、これを選択できないことがある。また、上記のシステムは、抽出した傷病名等の候補を提示して利用者に選択させるものであり、コード化の際に利用者の作業が必要となるためあまり効率的でない。
【0006】
本発明は、上記問題点を解決するためになされたものであり、その目的は、文字列で記載された傷病名のコード化を効率的に行うための傷病名コード化方法及び傷病名コード化プログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記問題点を解決するために、請求項1に記載の発明は、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化する傷病名コード化方法であって、前記コンピュータが、前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出段階と、前記構成文字を先頭文字として記録された語彙候補
を前記語彙データ記憶手段から抽出する語彙候補抽出段階と、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成段階と、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成段階と、前記生成された組合せに基づいて未コード化傷病名をコード化するコード化段階とを実行することを要旨とする。
【0008】
請求項2に記載の発明は、請求項1に記載の傷病名コード化方法において、前記コンピュータが、前記組合せ生成段階において複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する段階をさらに実行することを要旨とする。
【0009】
請求項3に記載の発明は、請求項1又は2に記載の傷病名コード化方法において、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、前記コンピュータが、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する段階を更に実行することを要旨とする。
【0010】
請求項4に記載の発明は、請求項1〜3のいずれか1つに記載の傷病名コード化方法において、前記コンピュータが、未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割する段階をさらに実行し、分割された文字列それぞれについてコード化を行うことを要旨とする。
【0011】
請求項5に記載の発明は、請求項1〜4のいずれか1つに記載の傷病名コード化方法において、前記コンピュータが、受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する段階をさらに実行し、この生成された未コード化傷病名をコード化することを要旨とする。
【0012】
請求項6に記載の発明は、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化するための傷病名コード化プログラムであって、前記コンピュータを、前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出手段と、前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出手段と、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成手段と、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成手段と、前記生成された組合せに基づいて未コード化傷病名をコード化するコード化手段として機能させることを要旨とする。
【0013】
請求項7に記載の発明は、請求項6に記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、前記組合せ生成手段で複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する手段として機能させることを要旨とする。
【0014】
請求項8に記載の発明は、請求項6又は7に記載の傷病名コード化プログラムにおいて、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、前記コンピュータを、更に、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する手段として機能させることを要旨とする。
【0015】
請求項9に記載の発明は、請求項6〜8のいずれか1つに記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、未コード化傷病名中に区切り文字を検出した場合に、前記区切り文字で前記未コード化傷病名を分割する手段として機能させ、分割された文字列それぞれについてコード化を行うことを要旨とする。
【0016】
請求項10に記載の発明は、請求項6〜9のいずれか1つに記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する手段として機能させ、この生成された未コード化傷病名をコード化することを要旨とする。
【0017】
(作用)
請求項1又は6に記載の発明によれば、コンピュータが、まず、未コード化傷病名の構成文字を抽出する。そして、前記構成文字を先頭文字として記録された語彙候補を、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段から抽出し、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成し、この組合せに基づいて未コード化傷病名をコード化する。これにより、未コード化傷病名の構成文字に基づいて、傷病名と修飾語の組合せを生成し、この組合せに基づいて未コード化傷病名をコード化できる。したがって、文字列で記載された傷病名のコード化を効率的に行うことができる。
【0018】
請求項2又は7に記載の発明によれば、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する。これにより、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、傷病名のコード化に用いる組合せを特定することが可能となる。この場合、例えば傷病名の文字数が多い組合せを優先的に特定する場合、コンピュータが自動的に最も文字数が多い傷病名が用いられている組合せを特定してもよいし、また、傷病名の文字数が多い順番に組合せを出力して、この中からユーザが組合せを特定してもよい。これにより、一括処理でも対話処理でも適用でき、一括処理の場合は、複数の組合せが生成された場合の処理を自動化でき、対話処理の場合は、傷病名の文字数が多い順番に出力していることからユーザが効率的に組合せの選択を行うことができる。
【0019】
請求項3又は8に記載の発明によれば、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いる。そして、前記コンピュータが、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する。これにより、未コード化傷病名における未コード化傷病名の文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0020】
請求項4又は9に記載の発明によれば、前記コンピュータが、未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割し、分割された文字列それぞれについてコード化を行う。これにより、未コード化傷病名に区切り文字が含まれる場合に、この区切り文字で区切った文字列についてそれぞれ傷病名のコード化を行うことができる。
【0021】
請求項5又は10に記載の発明によれば、前記コンピュータが、受信したレセプトデータに含まれる傷病名コードと修飾語コードを語彙に変換して未コード化傷病名を生成し、この生成された未コード化傷病名をコード化する。これにより、傷病名と修飾語との組合
せが複数可能な未コード化傷病名について、レセプトデータに含まれる傷病名コードと修飾語コードにかかわらず、再度、傷病名のコード化を行うことが可能となる。したがって、同じ未コード化傷病名に対して統一された傷病名コード及び修飾語コードを用いることができる。
【発明の効果】
【0022】
本発明によれば、文字列で記載された傷病名のコード化を効率的に行うことができる。
【発明を実施するための最良の形態】
【0023】
以下、本発明を具体化した一実施形態を、図1〜図14を用いて説明する。本実施形態では、電子化されたレセプトに記録されたコード化されていない傷病名をコード化するための傷病名コード化方法及び傷病名コード化プログラムとして説明する。
【0024】
図1に示すように、傷病名コード化サーバ20は、レセプト電算処理システム40に接続されている。
レセプト電算処理システム40は、電子化されたレセプト(レセプトデータ)を受け付け、画面審査システムに入力する。傷病名コード化サーバ20は、この画面審査システムからレセプトデータ(コード化前データ)を取り込み、バッチ処理により未コード化傷病名のコード化を行って、未コード化傷病名をコード化したデータ(コード化後データ)をレセプト電算処理システム40に引き渡す。レセプト電算処理システム40は、このコード化後データを用いてレセプトに関する処理を行う。このレセプト電算処理システム40では、レセプトデータに基づいてレセプトが画面表示され、この画面表示に基づいて審査担当者がレセプトの審査を行う。そして、レセプト電算処理システム40における審査担当者による審査が終了すると、レセプト電算処理システム40はレセプトに関する計数整理を行う。そして、レセプト電算処理システム40による処理結果に基づいて、請求支払処理が行われる。
【0025】
傷病名コード化サーバ20は、管理コンピュータ21を備えている。管理コンピュータ21は、レセプト電算処理システム40から取り込んだレセプトデータに記録されたコード化されていない傷病名をコード化するための各種処理を実行する。
【0026】
管理コンピュータ21は、図示しないCPU、RAM及びROM等を有し、後述する処理(構成文字抽出段階、語彙候補抽出段階、候補リスト生成段階、組合せ生成段階、コード化段階等を含む処理)を行う。このための傷病名コード化プログラムを実行することにより、管理コンピュータ21は、構成文字抽出手段、語彙候補抽出手段、候補リスト生成手段、組合せ生成手段、コード化手段等として機能する。
【0027】
構成文字抽出手段は、未コード化傷病名に含まれる構成文字を抽出する。
語彙候補抽出手段は、構成文字を先頭文字として記録された語彙候補を、傷病名マスタ及び修飾語マスタに基づいて作成した辞書から抽出する。
【0028】
候補リスト生成手段は、語彙候補に対して出現位置を関連付けた候補リストを生成する。
組合せ生成手段は、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す組合せを生成する。
【0029】
コード化手段は、生成された組合せに基づいて未コード化傷病名をコード化する。
また、管理コンピュータ21は、傷病名マスタデータ記憶部31、修飾語マスタデータ記憶部32、統一化ルールデータ記憶手段としての表記統一マスタデータ記憶部33、コ
ード化前データ記憶部34及びコード化後データ記憶部35に接続されている。
【0030】
傷病名マスタデータ記憶部31には、傷病名と傷病名コードとの対応表を構成する傷病名マスタが記録されている。傷病名マスタの各データ(傷病名マスタデータ)は、傷病名とこの傷病名に対応させた傷病名コードに関するデータにより構成される。傷病名マスタは、公的機関で管理される傷病名マスタから取得して記録され、公的機関で管理される傷病名マスタが更新された場合には、再取得されて更新される。
【0031】
修飾語マスタデータ記憶部32には、修飾語と修飾語コードとの対応表を構成する修飾語マスタが記録されている。修飾語マスタの各データ(修飾語マスタデータ)は、修飾語とこの修飾語に対応させた修飾語コードに関するデータにより構成される。修飾語マスタは、適宜、新たに修飾語が登録されることにより更新される。
【0032】
表記統一マスタデータ記憶部33には、表記のゆれを統一するための置換テーブルを構成する表記統一マスタが記録されている。表記統一マスタの各データ(辞書フィルタデータとしての表記統一マスタデータ)は、置換前の表記及び置換後の表記に関するデータにより構成される。図10に、表記統一マスタを説明するための置換テーブル140を示す。置換テーブル140では、表記統一マスタの置換前のデータと置換後のデータとともに、「備考」として置換内容を示している。表記統一マスタは、適宜、新たに置換前と置換後のデータが登録されることにより更新される。
【0033】
コード化前データ記憶部34には、レセプト電算処理システム40から取り込んだレセプトデータ(コード化前データ)が記録される。このレセプトデータに含まれる傷病名レコードのうち、傷病名コードが「0000999」のものが後述するコード化の対象となる。傷
病名レコードは、「レセプト電算処理システム 磁気レセプトの作成手引き−医科−」(社会保険診療報酬支払基金作成)に従った仕様となっている。
【0034】
傷病名レコードは、レコード識別情報、傷病名コード、修飾語コード及び傷病名称に関するデータを含んで構成されている。
レコード識別情報データ領域には、傷病名レコードを表す識別情報に関するデータが記録される。
【0035】
傷病名コードデータ領域には、該当する傷病名に対応する傷病名コードが記録される。コード化された傷病名を記録する場合には、該当する傷病名に対応する傷病名コードに関するデータが記録される。例えば、「虫垂炎」の場合、傷病名コードとして「5419001」
が記録される。コード化されていない傷病名(未コード化傷病名)を記録する場合、「0000999」が記録される。
【0036】
修飾語コードデータ領域には、該当する修飾語に対応する修飾語コードが記録される。この傷病名コードは、レセプトに表示する順番で記録し、最大20個まで記録可能である。具体的には、修飾語を使用する場合で接頭語付きの場合、例えば「急性虫垂炎」の場合「4012」が記録される。修飾語を使用する場合で接尾語付きの場合、例えば「虫垂炎の疑い」の場合「8002」が記録される。修飾語を使用する場合で両方が付く場合、例えば「急性虫垂炎の疑い」の場合「40128002」が記録される。なお、修飾語を使用しない場合や未コード化傷病名の場合、修飾語コードは記録しない。
【0037】
傷病名称データ領域には、傷病名コードとして未コード化傷病名コード「0000999」を
使用する場合に、文字列で表される傷病名称(未コード化傷病名)に関するデータが記録される。なお、傷病名コードが未コード化傷病名コード「0000999」以外の場合は記録し
ない。
【0038】
このように、傷病名レコードでは、傷病名を1つの傷病名コードと0個以上の修飾語コードとの組合せで表現する。この傷病名レコードの場合と同様に、後述する処理では、1つの傷病名コードと0個以上の修飾語コードとの組合せにより傷病名のコード化を行う。
【0039】
コード化後データ記憶部35には、コード化すべき傷病名レコードについてコード化したレセプトデータ(コード化後データ)が記録される。このコード化後データにおいて、コード化が行われた傷病名レコードには、文字列で表された傷病名称(未コード化傷病名)に基づいてコード化された傷病名コード及び修飾語コードが付加されている。
【0040】
(傷病名のコード化の概要)
次に、本実施形態で実現する傷病名のコード化の概要を説明する。
本実施形態において実現する傷病名のコード化は、以下の3種類に分類できる。すなわち、(1)傷病名と完全一致、(2)傷病名・修飾語と完全一致、(3)傷病名の部分一致の3種類である。(1)傷病名と完全一致の場合、コード化前の傷病名と完全に一致する傷病名を傷病名マスタの中から検索し、対応するコードで置き換える。(2)傷病名・修飾語と完全一致の場合、コード化前の傷病名をひとつの傷病名と複数の修飾語の並びとして分解し、対応するコードで置き換える。なお、後述するように、例えば「急性胃炎」は傷病名「急性胃炎」にコード化する方法と、修飾語「急性」及び傷病名「胃炎」の組合せにコード化する方法があるが、すべての組合せを試みた上で、最長の傷病名にマッチする前者を採用する方式とする。(3)傷病名の部分一致の場合、コード化前の傷病名と部分的に一致する傷病名を傷病名マスタの中から検索し、対応するコードで置き換える。
【0041】
また、レセプト電算処理システムで用いられる傷病名コードや修飾語コードと関連付けることのできる傷病名や修飾語の辞書があれば、どのようなものでも利用可能である。例えば、MEDIS−DC(財団法人 医療情報システム開発センター)がインターネットを通じて配布している「ICD10 対応電子カルテ用標準病名マスタ」等が利用できる。このマスタに収載された傷病名及び修飾語は交換用コードを介して、レセプト電算処理システムの傷病名コード及び修飾語コードと関連付けることができる。
【0042】
図5に、コード化方法について、傷病名と完全一致、傷病名・修飾語と完全一致、未コード化傷病名変換マスタ等による変換、傷病名の部分一致の各場合の事例100を示す。この事例100において、各場合について、コード化前の傷病名(未コード化傷病名)、コード化後の傷病名コード、傷病名、修飾語コード及び修飾語を示す。
【0043】
さらに、コード化の精度を向上させるために、以下のような機能を実現する。
括弧書きの修飾語:未コード化傷病名の中には修飾語を括弧書きで表記しているものが見受けられる。これらは前述の方法では正しく変換できないため、括弧を除外して変換を試みる。図6に、この場合の事例110を示す。
【0044】
表記のゆれ:表記のゆれ(表記は異なるが同義であること)により、傷病名マスタの傷病名と一致しない場合がある。具体的には以下のようなものがある。すなわち、音引き「ー」とハイフン「−」の違い、あるいはその有無、拗音「ゃ」と直音「や」、正字「頸」と異字「頚」、漢字表記「欝」とひらがな表記「うつ」、が表記のゆれに該当する。これらについては傷病名マスタとの突合せを行う前に、追加辞書としての統一マスタデータ記憶部33に記録された統一マスタを用いて表記を統一することによって対応する。図7に、この場合の事例(変換例)120を示す。
【0045】
また、ひとつの傷病名欄に「・」、「+」、「,」等の文字で区切って複数の傷病名を記述している場合がある。これについては区切り文字で分割し、それぞれについて前述の
コード化を行う。図8に、この場合の事例130を示す。
【0046】
(処理手順)
次に、上記のようなシステムを用いて、未コード化傷病名をコード化する場合の処理手順を図2〜図4を用いて説明する。傷病名コード化サーバ20の管理コンピュータ21は、レセプト電算処理システム40からレセプトデータ(コード化前データ)を取り込み、コード化前データ記憶部34に記録する。そして、管理コンピュータ21は、このレセプトデータの傷病名レコードのうち、傷病名コードが「0000999」のものについて以下の処
理を行う。
【0047】
図2に示すように、まず、傷病名コード化サーバ20の管理コンピュータ21は、傷病名マスタデータ記憶部31及び修飾語マスタデータ記憶部32から傷病名マスタ及び修飾語マスタをそれぞれ読み込み、語彙データとしての辞書(電子辞書)を作成する(ステップS1−1)。作成された辞書は、管理コンピュータ21の所定の記憶部(図示せず)に記録される。この辞書を記録することにより、この記憶部は語彙データ記憶手段として機能する。この辞書は、先頭1文字によるインデックス及び傷病名へのリンクによって表現している。この辞書について、図9を用いて説明する。
【0048】
図9に示すように、管理コンピュータ21は、辞書を、傷病名または修飾語の先頭1文字からなるインデックス部60と、単語部70とから構成する。ここで、インデックス部60は傷病名及び修飾語の先頭1文字の配列から構成する。単語部70は傷病名及び修飾語のリストから構成する。単語部70の各レコードは、傷病名・修飾語の別を識別するための区分71、傷病名又は修飾語のコード72、及び、傷病名又は修飾語の名称(辞書登録名称)73により構成する。区分71は、傷病名・修飾語の別を識別するために用いられ、具体的には、「b」は傷病名、「z」は修飾語を表す。コード72は、傷病名コード又は修飾語コードを表す。名称73は、傷病名又は修飾語を表す。このように、管理コンピュータ21は、この辞書の中に、傷病名及び修飾語を混在させて登録する。また、必要に応じて索引テーブル等も同一の辞書に登録する。
【0049】
なお、傷病名及び修飾語を辞書に登録するときは、管理コンピュータ21は、表記統一マスタデータ記憶部33に記録された表記統一マスタを使用して、表記のゆれのある文字列を置換してから登録する。この表記統一マスタの登録データの例は、上述のように、図10に置換テーブル140として示している。例えば、置換前が「ハーラー・シャイエ症候群」である場合、音引きを削除することにより、置換後は「ハラ・シヤイエ症候群」に変換する。
【0050】
以下の処理では、このようにして作成した辞書を用いて処理を行う。なお、複数のコード化対象の傷病名レコード(傷病名コードが「0000999」のもの)が存在する場合、コー
ド化の対象となるすべての傷病名レコードについて、ここで作成され記録された辞書を用いて処理を行う。すなわち、2件目以降のコード化対象の傷病名レコードについては、ステップS1−2以降の処理を実行する。
【0051】
次に、管理コンピュータ21は、コード化対象の傷病名レコードの傷病名の表記(未コード化傷病名)を統一する(ステップS1−2)。具体的には、管理コンピュータ21は、統一マスタデータ記憶部33に記録された表記統一マスタを使用して、上記の辞書の作成の場合と同様の方法で未コード化傷病名を置換する。この処理により、管理コンピュータ21は、上述の図7に示す事例120の各事例のように、表記統一マスタを使用して文字列を置換してコード化を行う。
【0052】
次に、管理コンピュータ21は、候補抽出処理を行う(ステップS1−3)。この候補
抽出処理では、未コード化傷病名(置換が必要な場合は置換後の未コード化傷病名)に出現する辞書中の傷病名及び修飾語をすべて抽出する。この候補抽出処理の手順を図3を用いて説明する。
【0053】
図3に示すように、まず、管理コンピュータ21は、コード化対象の傷病名レコードの傷病名称(未コード化傷病名)を先頭から1文字ずつ走査し、構成文字を1文字特定する(ステップS2−1)。この処理を「急性潰瘍性大腸炎」について行った場合について以下に説明する。すなわち、図11の未コード化傷病名文字列80において、1文字ずつ走査する。ここでは、管理コンピュータ21は、図11に示すように、未コード化傷病名文字列80である「急性潰瘍性大腸炎」の先頭文字の「急」について検索する。
【0054】
そして、管理コンピュータ21は、特定された構成文字を先頭文字とする辞書登録名称の候補を抽出する(ステップS2−2)。具体的には、特定された構成文字1文字に対応するインデックスを用いて、候補となる辞書登録名称のリストを取得する。ここでは、管理コンピュータ21は、図11に示すように、先頭文字が「急」である辞書登録名称を取得する。
【0055】
そして、管理コンピュータ21は、取得されたリストを順次特定して、辞書登録名称の全部と未コード化傷病名の特定された構成文字を先頭とする部分とが一致するかどうかを調べる(ステップS2−3)。例えば、辞書登録名称「急速進行性びまん性半月体形成性糸球体腎炎」は、未コード化傷病名の特定された構成文字を先頭とする部分と一致しない。辞書登録名称の全部と未コード化傷病名の特定された構成文字を先頭とする部分とが一致しない場合(ステップS2−3においてNOの場合)、管理コンピュータ21は、抽出された候補の中から次候補を特定する(ステップS2−6)。そして、特定された次候補について、ステップS2−3〜ステップS2−5の処理を行う。
【0056】
そして、一致する候補を取得した場合(ステップS2−3においてYESの場合)、管理コンピュータ21は、辞書登録名称及びコードと出現位置とを候補リストに記録する(ステップS2−4)。具体的には、傷病名・修飾語の別を識別する区分、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)及び出現位置を候補リストの1レコードとして管理コンピュータ21の図示しない記憶部に記録する。例えば、上記の「急性潰瘍性大腸炎」の事例の場合、順次、上述の処理を繰り返すことにより、図11において太線で示すように、「急性潰瘍性大腸炎」の先頭文字の「急」について、「急性潰瘍性大腸炎」、「急性潰瘍性」、「急性」の3つが得られる。
【0057】
この構成文字に対して抽出された候補についてすべて処理を終了しているわけではない場合(ステップS2−5においてNOの場合)、管理コンピュータ21は、抽出された候補の中から次候補を特定する(ステップS2−6)。そして、特定された次候補について、ステップS2−3〜ステップS2−5の処理を行う。そして、特定された構成文字に対して抽出された候補についてすべて処理を終了した場合(ステップS2−5においてYESの場合)、管理コンピュータ21は、コード化すべき未コード化傷病名中に次の構成文字があるかどうかを調べる(ステップS2−7)。次の構成文字がある場合(ステップS2−7においてYESの場合)、管理コンピュータ21は、ステップS2−1の処理に戻る。そして、未コード化傷病名を先頭から1文字ずつ走査し、未コード化傷病名中の次の構成文字を1文字特定する(ステップS2−1)。「急性潰瘍性大腸炎」の場合、管理コンピュータ21は、2文字目の「性」を特定し、「性」、「潰」、「瘍」・・・「炎」を順次、特定する。
【0058】
このようにして、順に、未コード化傷病名を先頭から1文字ずつ走査し、未コード化傷病名中に次の構成文字がない場合(ステップS2−7においてNOの場合)、管理コンピ
ュータ21は、この候補抽出処理を終了する。「急性潰瘍性大腸炎」のすべての構成文字について検索を行った結果、図12に候補リスト説明表示150として示す候補リストが得られる。候補リスト説明表示150では、傷病名と修飾語とに分けて検索結果を並べ替えたものについて、各候補について種類(傷病名・修飾語の別)、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)、及び出願位置を示している。具体的には、出現位置「0」の「急」を先頭文字とするものとして、「急性潰瘍性大腸炎」(傷病名)、「急性潰瘍性」(修飾語)及び「急性」(修飾語)が得られている。出現位置「2」の「潰」を先頭文字とするものとして、「潰瘍性大腸炎」(傷病名)及び「潰瘍性」(修飾語)が得られている。出現位置「5」の「大」を先頭文字とするものとして、「大腸炎」(傷病名)が得られている。
【0059】
次に、管理コンピュータ21は、組合せ列挙処理を行う(ステップS1−4)。この組合せ列挙処理では、候補抽出処理において抽出された候補の中から、1個の傷病名と0個以上の修飾語から構成される組合せであって傷病名全体を過不足なく表す組合せをすべて生成し、列挙する。
【0060】
この組合せ列挙処理は、具体的には、開始位置「0」を引数として以下の「組合せ列挙処理(N)」を実行することにより行う。この処理は自分自身を再帰的に呼び出すことによって、すべての組合せを見つける。この組合せ列挙処理について図4を用いて説明する。ここでは、上述の事例について図13を用いて説明する。図13では、組合せの説明のために、組合せに従って候補リストの各候補を関連付けて表示している。ここでは、候補リストの各候補について、傷病名・修飾語の別を識別する区分91、候補となる傷病名又は修飾語の辞書登録名称92及び出現位置93とを示す。
【0061】
図4に示すように、まず、管理コンピュータ21は、Nがコード化対象傷病名(未コード化傷病名)の長さ(文字数)以上かどうかを調べる(ステップS3−1)。なお、処理の開始時には、Nは開始位置「0」である。Nがコード化対象傷病名(未コード化傷病名)の長さ以上でない場合(ステップS3−1におてNOの場合)、管理コンピュータ21は、候補リストから先頭の候補を取り出す(ステップS3−2)。上記の事例においては、図13に示すように、取り出された先頭の候補は「急性潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「0」)である。
【0062】
そして、Nが候補の出現位置と一致する場合(ステップS3−3においてNOの場合)、管理コンピュータ21は、この候補を組合せ対象候補として記録する(ステップS3−4)。具体的には、傷病名・修飾語の別を識別する区分、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)、出現位置を記録する。上記の「急性潰瘍性大腸炎」の出現位置は「0」であり、N(=0)と一致するため、この「急性潰瘍性大腸炎」について組合せ対象候補として記録する。具体的には、区分「b(傷病名)」、コード「0091015」、辞書登録名称「急性潰瘍性大腸炎」、出現位置「0」を記録する。
【0063】
次に、管理コンピュータ21は、Nに候補の辞書登録名称の文字数を加えたものをXとする(ステップS3−5)。上記の事例では、「急性潰瘍性大腸炎」の文字数は「8」であるため、「X=8」とする。そして、組合せ列挙処理(X)を呼ぶ(ステップS3−6)。
【0064】
組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数と同じ、すなわち、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0065】
そして、管理コンピュータ21は、組合せ列挙処理(N)において、次の候補があるかどうかを調べる(ステップS3−7)。次の候補がある場合(ステップS3−7においてYESの場合)、管理コンピュータ21は、次候補を取り出す(ステップS3−8)。そして、ステップS3−3の処理に戻り、取り出した候補についてステップS3−3〜ステップS3−6の処理を行う。そして、次の候補がない場合(ステップS3−7においてNOの場合)、この組合せ列挙処理(N)を終了する。
【0066】
以下、上記の事例について、継続して具体的に説明する。
上記の事例では、組合せ列挙処理(N(=0))において、ステップS3−8の処理により、候補リストから候補が順次取り出される。ここで、「潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「2」)については、N(=0)が候補の出現位置「2」と不一致であるため(ステップS3−3においてYESであるため)、ステップS3−4〜ステップS3−6の処理をスキップして次の候補を調べる(ステップS3−7)。また、「大腸炎」(区分「b(傷病名)」、出現位置「5」)についても、N(=0)が候補の出現位置「5」と不一致であるため(ステップS3−3においてYESであるため)、ステップS3−4〜ステップS3−6の処理をスキップして次の候補を調べる(ステップS3−7)。
【0067】
「急性」(区分「z(修飾語)」、出現位置「0」)については、N(=0)が候補の出現位置「0」と一致するため(ステップS3−3においてNOであるため)、組合せ対象候補として記録する(ステップS3−4)。この場合、N(=0)に辞書登録名称の文字数(2)を加えたものをX(=2)とする(ステップS3−5)。そして、組合せ列挙処理(X(=2))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=2))において、「潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「2」)について、X(=2)が候補の出現位置「2」と一致するため(ステップS3−3においてNOであるため)、「潰瘍性大腸炎」について、図13に示すように「急性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=2)に辞書登録名称の文字数(6)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0068】
そして、管理コンピュータ21は、組合せ列挙処理(X(=2))を継続する。この組合せ列挙処理(X(=2))において、次の候補として「潰瘍性」(区分「z(修飾語)」、出現位置「2」)が取り出された場合、この「潰瘍性」については、X(=2)が候補の出現位置「2」と一致する(ステップS3−3においてNOである)。このため、「潰瘍性」について、図13に示すように「急性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=2)に辞書登録名称の文字数(3)を加えたものをX(=5)として(ステップS3−5)、組合せ列挙処理(X(=5))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=5))において、「大腸炎」(区分「b(傷病名)」、出現位置「5」)について、X(=5)が候補の出現位置「5」と一致するため(ステップS3−3においてNOであるため)、「大腸炎」について、図13に示すように「急性」及び「潰瘍性」と関連付けて記録する(ステップS3−4)。この場合、X(=5)に辞書登録名称の文字数(3)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0069】
そして、管理コンピュータ21は、組合せ列挙処理(X(=5))を継続し、次の候補
がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=5))を終了する。さらに、管理コンピュータ21は、組合せ列挙処理(X(=2))を継続し、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=2))を終了する。
【0070】
そして、管理コンピュータ21は、組合せ列挙処理(N(=0))を継続する。この組合せ列挙処理(N(=0))において、次の候補として「急性潰瘍性」(区分「z(修飾語)」、出現位置「0」)が取り出された場合、この「急性潰瘍性」については、N(=0)が候補の出現位置「0」と一致するため(ステップS3−3においてNOであるため)、組合せ対象候補として記録する(ステップS3−4)。この場合、N(=0)に辞書登録名称の文字数(5)を加えたものをX(=5)として(ステップS3−5)、組合せ列挙処理(X(=5))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=5))において、「大腸炎」(区分「b(傷病名)」、出現位置「5」)について、X(=5)が候補の出現位置「5」と一致するため(ステップS3−3においてNOであるため)、「大腸炎」について、図13に示すように「急性潰瘍性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=5)に辞書登録名称の文字数(3)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0071】
そして、管理コンピュータ21は、組合せ列挙処理(X(=5))を継続する。そして、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=5))を終了する。
【0072】
そして、管理コンピュータ21は、組合せ列挙処理(N(=0))を継続する。そして、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(N(=0))を終了する。
【0073】
この結果、上記の事例の場合は、図14に示す組合せ結果160のように4通りの組合せが得られる。
次に、管理コンピュータ21は、列挙された組合せ結果から、候補の選択を行う(ステップS1−5)。候補の選択は、具体的には以下のように行う。(1)傷病名と完全一致:単一の傷病名で全体に一致するものが見つかった場合、それを選択する。(2)傷病名・修飾語と完全一致:「傷病名と完全一致」に該当するものが存在しない場合で、単一の傷病名及び1つ以上の修飾語で表現されるものが見つかった場合、それを選択する。該当するものが複数存在する場合は傷病名が最も長いものを選択する。上記の事例の場合、図14の組合せ結果160の2,3,4行目がこれに相当し、傷病名が最も長い2行目を選択する(ただし「傷病名と完全一致」に該当するので、実際には選択されない)。(3)傷病名の部分一致:「傷病名と完全一致」及び「傷病名・修飾語と完全一致」に該当するものが存在しない場合で、部分的に傷病名が一致するものがあれば、それを選択する。該当するものが複数存在する場合は傷病名が最も長いものを選択する。なお、列挙された組合せのうち、傷病名(区分「b」)を複数含んでいるものは廃棄する。
【0074】
このようにして候補の選択を行った結果、上記の事例の場合は、図14の組合せ結果160の1行目に相当する傷病名「急性潰瘍性大腸炎」(傷病名コード「0091015」)のみ
からなる組合せが得られる。
【0075】
なお、この候補の選択において結果が得られなかった場合には、未コード化傷病名に含まれる括弧や区切り文字を除外して、上述のステップS1−2〜ステップS1−5の処理
を再度実行する。例えば、未コード化傷病名が「ケロイド(肩、背部)」である場合、括弧及び区切り文字を除外することにより「ケロイド肩背部」に変換する。そして、この「ケロイド肩背部」についてコード化を試みる。除外対象の括弧や区切り文字としては、例えば、「 」(空白文字)、「・」、「ー」、「−」、「(」、「)」等が該当する。なお、上述の図6に示す事例110の各事例は、このように区切り文字を除外してコード化を試みた結果を示している。
【0076】
さらに、ここまでの手順で結果が得られなかった場合は、未コード化傷病名中に出現する区切り文字で未コード化傷病名を分割し、その結果の各々についてステップS1−2〜ステップS1−5の処理を再度実行する。なお、この区切り文字による分割においては、「 」(空白文字)、「・」、「,」、「。」、「、」等を区切り文字として扱う。ただし、括弧で囲まれた文字列の中に区切り文字が出現する場合はそれを区切り文字とみなさない。例えば、未コード化傷病名「潰瘍、ケロイド(肩、背部)」は、「潰瘍」、「ケロイド(肩、背部)」に分割する。なお、上述の図8に示す事例130は、このように未コード化傷病名中に出現する区切り文字で未コード化傷病名を分割し、その結果の各々についてコード化を試みた結果を示している。この事例130の場合、1つの傷病名レコードに対してコード化された傷病名と修飾語との組合せが3つ作成されることになる。なお、このようにして分割された結果のうち、コード化のための候補を特定できなかったものがある場合、候補が特定できなかったものについて、上述のように、括弧や区切り文字を除外して、上述のステップS1−2〜ステップS1−5の処理を再度実行する。
【0077】
次に、管理コンピュータ21は、選択された候補によりコード化を行い、コード化前データの傷病名レコードに、選択された組合せの傷病名コード及び修飾語コードを付加してコード化後データ記憶部35に記録する(ステップS1−6)。なお、選択された組合せにおいて修飾語が複数ある場合には複数の修飾語コードを記録し、修飾語がない場合には修飾語コードの記録は行わない。
【0078】
このようにして、コード化後データ記憶部35には、未コード化傷病名が用いられた傷病名レコード(傷病名コードが「0000999」のもの)については、傷病名レコードに選択
された組合せによる傷病名コード及び修飾語コードが付加されて記録される。なお、もともとコード化されていた傷病名レコード(傷病名コードが「0000999」以外のもの)につ
いては、この傷病名レコードがそのままコード化後データ記憶部35に記録される。また、レセプトデータの傷病名レコード以外のデータについては、コード化前データと同様のデータがコード化後データ記憶部35に記録される。
【0079】
そして、傷病名コード化サーバ20は、未コード化傷病名をコード化したレセプトデータ(コード化後データ)をレセプト電算処理システム40に引き渡す。レセプト電算処理システム40は、このレセプトデータ(コード化後データ)を用いて、レセプトの審査のための処理を行う。
【0080】
以上、本実施形態によれば、以下に示す効果を得ることができる。
・ 上記実施形態では、管理コンピュータ21が、修飾語マスタデータ記憶部32の修飾語マスタと、傷病名マスタデータ記憶部31の傷病名マスタとを用いて辞書(電子辞書)を作成する。そして、未コード化傷病名の構成文字を1文字ずつ抽出し、抽出した構成文字を先頭文字として記録された語彙候補を抽出し、この語彙候補に対して未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて傷病名全体を過不足なく表す語彙候補の組合せを生成し、生成された組合せに基づいて未コード化傷病名をコード化する。これにより、未コード化傷病名の構成文字に基づいて、傷病名と修飾語の組合せを特定し、この組合せに基づいて未コー
ド化傷病名をコード化できる。したがって、文字列で記載された傷病名のコード化を効率的に行うことができる。
【0081】
・ 上記実施形態では、管理コンピュータ21が、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定し、この組合せに含まれる傷病名及び修飾語に対応する傷病名コード及び修飾語コードを付与する。これにより、傷病名と修飾語との組合せを複数生成できた場合に、傷病名の文字数が最も多いものを用いることが可能となる。
【0082】
・ 上記実施形態では、管理コンピュータ21が、表記統一マスタデータ記憶部33に記録された表記統一マスタを用いて、未コード化傷病名の表記を統一化する。これにより、未コード化傷病名の文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0083】
・ 上記実施形態では、管理コンピュータ21が、未コード化傷病名中に区切り文字を検出した場合、検出された区切り文字で未コード化傷病名を分割し、分割された文字列それぞれについて、コード化を行う。これにより、未コード化傷病名に区切り文字が含まれる場合に、この区切り文字で区切った文字列についてそれぞれ傷病名のコード化を行うことができる。
【0084】
・ 上記実施形態では、管理コンピュータ21が、生成した組合せから2以上の傷病名を検出した場合、この組合せを廃棄する。これにより、傷病名を2以上含む組合せを除いて、傷病名と修飾語の組合せを特定して傷病名のコード化を行うことができる。
【0085】
・ 上記実施形態では、管理コンピュータ21が、未コード化傷病名を過不足なく表現する傷病名と修飾語の組合せをすべて列挙し、この中から、傷病名の文字数が最も多いものを選択する。これにより、傷病名マスタと修飾語マスタとを用いて未コード化傷病名を過不足なく表現する傷病名と修飾語との組合せが可能な場合に、必ず、未コード化傷病名を過不足なく表現する組合せを特定できる。
【0086】
・ 上記実施形態では、管理コンピュータ21が、傷病名マスタ及び修飾語マスタについても表記統一マスタデータ記憶部33に記録された表記統一マスタを用いて、表記を統一化する。これにより、傷病名マスタ及び修飾語マスタの各登録データに表記(文字列)のゆれがある場合にも、この文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0087】
なお、上記実施形態は、以下の態様に変更してもよい。
○ 上記実施形態では、レセプトデータの傷病名レコードにおいて傷病名がコード化されていない場合に未コード化傷病名をコード化した。これに代えて、管理コンピュータ21が、レセプトデータの傷病名レコードに含まれる傷病名コードと修飾語コードを、上記実施形態の辞書(電子辞書)を用いて語彙に変換して未コード化傷病名を生成し、この未コード化傷病名に対して、再度、傷病名のコード化を行ってもよい。これにより、傷病名と修飾語との組合せが複数可能な未コード化傷病名について、レセプトデータ中の傷病名レコードに含まれる傷病名コードと修飾語コードにかかわらず、再度、傷病名のコード化を行うことが可能となる。したがって、同じ未コード化傷病名に対して統一された傷病名コード及び修飾語コードを用いることができる。
【0088】
○ 上記実施形態では、傷病名のコード化を行う際に、辞書の作成を行った。これに代えて、傷病名マスタデータ記憶部31、修飾語マスタデータ記憶部32又は統一マスタデータ記憶部33が更新された場合に、辞書の作成を行ってもよい。そして、作成した辞書
データを記録しておき、傷病名のコード化を行う際にこの辞書データを用いてもよい。これにより、傷病名のコード化を行う際の処理を効率化できる。
【0089】
○ 上記実施形態では、候補抽出処理(ステップS1−3)において、未コード化傷病名の構成文字を1文字ずつ特定して、それぞれ特定された構成文字を先頭文字とする候補を抽出した。これに代えて、候補の抽出状況に応じて、未コード化傷病名の構成文字を先頭文字とする候補の抽出を行ってもよい。例えば、上記の事例の場合、出現位置「0」では「急性潰瘍性大腸炎」(8文字)、「急性」(2文字)、「急性潰瘍性」(5文字)のみが検索されており、1文字のものは検索されていないため、「性」(出現位置「1」)を先頭文字とする候補の検索は行わずに、次に「潰」(出現位置「2」)を先頭文字とする候補の検索を行ってもよい。これにより、処理を効率化できる。
【0090】
○ 上記実施形態では、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定した。これに代えて、傷病名の文字数が最も少ない組合せを特定してもよい。このように傷病名の文字数が最も少ない組合せを選択する場合、修飾語を除外した傷病名をコードとして得ることができ、例えば、統計用途として用いる場合に便利である。
【0091】
○ 上記実施形態では、傷病名のコード化の処理を一括処理で行い、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定し、この組合せに対応する傷病名コード及び修飾語コードを自動的に設定した。これに代えて、対話処理により傷病名のコード化を行う場合に本発明を適用し、複数の組合せが生成された場合に、管理コンピュータ21が、生成された組合せに優先順位を付与してこの優先順位に従って組合せを出力し、この中からユーザが組合せを特定してもよい。例えば、傷病名の文字数が多いものを優先的に選択する場合、管理コンピュータ21が傷病名の文字数が多い順番に組合せを出力して、この中からユーザが組合せを特定する。この場合、傷病名の文字数が多い順番に出力されていることにより、ユーザは、出力された順番にユーザが傷病名と修飾語との組合せを確認して、効率的に組合せの選択を行うことができる。
【0092】
○ 上記実施形態では、レセプトデータに含まれる傷病名レコード中の傷病名称(未コード化傷病名)をコード化する場合に本発明を具体化したが、本発明はこれに限られるものではない。本発明は、文字列で記録された傷病名をコード化する場合に用いることができ、例えば、電子カルテ等に記録する傷病名をコード化する場合に用いることができる。
【図面の簡単な説明】
【0093】
【図1】本発明の一実施形態のシステムの概略図。
【図2】本発明の一実施形態の処理手順の説明図。
【図3】本発明の一実施形態の処理手順の説明図。
【図4】本発明の一実施形態の処理手順の説明図。
【図5】本発明の傷病名のコード化方法の事例を示す説明図。
【図6】本発明の傷病名のコード化方法の事例を示す説明図。
【図7】本発明の傷病名のコード化方法の事例を示す説明図。
【図8】本発明の傷病名のコード化方法の事例を示す説明図。
【図9】辞書データの説明図。
【図10】表記統一マスタの説明図。
【図11】候補抽出処理についての説明図。
【図12】候補抽出処理についての説明図。
【図13】組合せ列挙処理についての説明図。
【図14】組合せ列挙処理についての説明図。
【符号の説明】
【0094】
21…管理コンピュータ、31…傷病名マスタデータ記憶部、32…修飾語マスタデータ記憶部、33…統一化ルールデータ記憶手段としての統一マスタデータ記憶部。
【技術分野】
【0001】
本発明は、文字列で記載された傷病名をコード化するための傷病名コード化方法及び傷病名コード化プログラムに関し、特に医療機関が傷病名をコード化してカルテの管理を行う電子カルテシステム、もしくは保険者や審査支払機関がレセプト(診療報酬明細書)に記載された傷病名をコード化してレセプトに関する処理を行うレセプト電算処理システム等で用いる傷病名コード化方法及び傷病名コード化プログラムに関する。
【背景技術】
【0002】
個人が医療機関で医療行為を受けた場合、個人が自己負担分をその場で医療機関に対して支払うとともに、医療機関が保険団体に対してレセプト(診療報酬明細書)を発行して個人負担以外の医療費の支払いを請求する。そして、審査支払機関がレセプトに誤りがないかを審査し、審査を通ったレセプトを保険団体が受け付けて医療機関に対して支払いを行う。
【0003】
従来は紙媒体のレセプトでこの処理を行っていたが、効率化のため、1999年4月から厚生労働省を中心に審査支払機関の「レセプト電算処理システム」の受入体制が整備され、各病院がレセプトを電子媒体で提出することが可能となった。
【0004】
電子化されたレセプトでは、傷病名の記載には傷病名コード及び修飾語コードを用いることが基本であるが、傷病名を文字列で表記することも許容されている。
このように傷病名が文字列で記載されたレセプトデータを取り扱う場合に文字列で記載された傷病名のコード化を効率的に行うためのシステムが開発されている(例えば、特許文献1参照。)。この特許文献1に開示されているシステムでは、レセプトに記載された傷病名に対応する文字列を傷病名マスタと照合する前に、レセプト記載傷病名文字列上で起こり得る様々な異表記をマスタ傷病名の表記文字列に変換する。そして、変換後の文字列でマスタ傷病名を検索し、マスタ傷病名が複数検索された場合にその出現位置関係によって採否を決定し、その後、残余の文字列に対して修飾語の検出を試みる。
【特許文献1】特開2002−366648号公報(第3−17頁)
【発明の開示】
【発明が解決しようとする課題】
【0005】
上記のシステムでは、マスタ傷病名が複数検出された場合に修飾語を考慮せずに先にマスタ傷病名を決定する。この場合、コード化すべき傷病名を過不足なくコード化できるマスタ傷病名と修飾語との組合せが存在しても、これを選択できないことがある。また、上記のシステムは、抽出した傷病名等の候補を提示して利用者に選択させるものであり、コード化の際に利用者の作業が必要となるためあまり効率的でない。
【0006】
本発明は、上記問題点を解決するためになされたものであり、その目的は、文字列で記載された傷病名のコード化を効率的に行うための傷病名コード化方法及び傷病名コード化プログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記問題点を解決するために、請求項1に記載の発明は、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化する傷病名コード化方法であって、前記コンピュータが、前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出段階と、前記構成文字を先頭文字として記録された語彙候補
を前記語彙データ記憶手段から抽出する語彙候補抽出段階と、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成段階と、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成段階と、前記生成された組合せに基づいて未コード化傷病名をコード化するコード化段階とを実行することを要旨とする。
【0008】
請求項2に記載の発明は、請求項1に記載の傷病名コード化方法において、前記コンピュータが、前記組合せ生成段階において複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する段階をさらに実行することを要旨とする。
【0009】
請求項3に記載の発明は、請求項1又は2に記載の傷病名コード化方法において、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、前記コンピュータが、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する段階を更に実行することを要旨とする。
【0010】
請求項4に記載の発明は、請求項1〜3のいずれか1つに記載の傷病名コード化方法において、前記コンピュータが、未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割する段階をさらに実行し、分割された文字列それぞれについてコード化を行うことを要旨とする。
【0011】
請求項5に記載の発明は、請求項1〜4のいずれか1つに記載の傷病名コード化方法において、前記コンピュータが、受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する段階をさらに実行し、この生成された未コード化傷病名をコード化することを要旨とする。
【0012】
請求項6に記載の発明は、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化するための傷病名コード化プログラムであって、前記コンピュータを、前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出手段と、前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出手段と、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成手段と、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成手段と、前記生成された組合せに基づいて未コード化傷病名をコード化するコード化手段として機能させることを要旨とする。
【0013】
請求項7に記載の発明は、請求項6に記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、前記組合せ生成手段で複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する手段として機能させることを要旨とする。
【0014】
請求項8に記載の発明は、請求項6又は7に記載の傷病名コード化プログラムにおいて、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、前記コンピュータを、更に、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する手段として機能させることを要旨とする。
【0015】
請求項9に記載の発明は、請求項6〜8のいずれか1つに記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、未コード化傷病名中に区切り文字を検出した場合に、前記区切り文字で前記未コード化傷病名を分割する手段として機能させ、分割された文字列それぞれについてコード化を行うことを要旨とする。
【0016】
請求項10に記載の発明は、請求項6〜9のいずれか1つに記載の傷病名コード化プログラムにおいて、前記コンピュータを、更に、受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する手段として機能させ、この生成された未コード化傷病名をコード化することを要旨とする。
【0017】
(作用)
請求項1又は6に記載の発明によれば、コンピュータが、まず、未コード化傷病名の構成文字を抽出する。そして、前記構成文字を先頭文字として記録された語彙候補を、傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段から抽出し、前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成し、この組合せに基づいて未コード化傷病名をコード化する。これにより、未コード化傷病名の構成文字に基づいて、傷病名と修飾語の組合せを生成し、この組合せに基づいて未コード化傷病名をコード化できる。したがって、文字列で記載された傷病名のコード化を効率的に行うことができる。
【0018】
請求項2又は7に記載の発明によれば、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する。これにより、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、傷病名のコード化に用いる組合せを特定することが可能となる。この場合、例えば傷病名の文字数が多い組合せを優先的に特定する場合、コンピュータが自動的に最も文字数が多い傷病名が用いられている組合せを特定してもよいし、また、傷病名の文字数が多い順番に組合せを出力して、この中からユーザが組合せを特定してもよい。これにより、一括処理でも対話処理でも適用でき、一括処理の場合は、複数の組合せが生成された場合の処理を自動化でき、対話処理の場合は、傷病名の文字数が多い順番に出力していることからユーザが効率的に組合せの選択を行うことができる。
【0019】
請求項3又は8に記載の発明によれば、表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いる。そして、前記コンピュータが、前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する。これにより、未コード化傷病名における未コード化傷病名の文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0020】
請求項4又は9に記載の発明によれば、前記コンピュータが、未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割し、分割された文字列それぞれについてコード化を行う。これにより、未コード化傷病名に区切り文字が含まれる場合に、この区切り文字で区切った文字列についてそれぞれ傷病名のコード化を行うことができる。
【0021】
請求項5又は10に記載の発明によれば、前記コンピュータが、受信したレセプトデータに含まれる傷病名コードと修飾語コードを語彙に変換して未コード化傷病名を生成し、この生成された未コード化傷病名をコード化する。これにより、傷病名と修飾語との組合
せが複数可能な未コード化傷病名について、レセプトデータに含まれる傷病名コードと修飾語コードにかかわらず、再度、傷病名のコード化を行うことが可能となる。したがって、同じ未コード化傷病名に対して統一された傷病名コード及び修飾語コードを用いることができる。
【発明の効果】
【0022】
本発明によれば、文字列で記載された傷病名のコード化を効率的に行うことができる。
【発明を実施するための最良の形態】
【0023】
以下、本発明を具体化した一実施形態を、図1〜図14を用いて説明する。本実施形態では、電子化されたレセプトに記録されたコード化されていない傷病名をコード化するための傷病名コード化方法及び傷病名コード化プログラムとして説明する。
【0024】
図1に示すように、傷病名コード化サーバ20は、レセプト電算処理システム40に接続されている。
レセプト電算処理システム40は、電子化されたレセプト(レセプトデータ)を受け付け、画面審査システムに入力する。傷病名コード化サーバ20は、この画面審査システムからレセプトデータ(コード化前データ)を取り込み、バッチ処理により未コード化傷病名のコード化を行って、未コード化傷病名をコード化したデータ(コード化後データ)をレセプト電算処理システム40に引き渡す。レセプト電算処理システム40は、このコード化後データを用いてレセプトに関する処理を行う。このレセプト電算処理システム40では、レセプトデータに基づいてレセプトが画面表示され、この画面表示に基づいて審査担当者がレセプトの審査を行う。そして、レセプト電算処理システム40における審査担当者による審査が終了すると、レセプト電算処理システム40はレセプトに関する計数整理を行う。そして、レセプト電算処理システム40による処理結果に基づいて、請求支払処理が行われる。
【0025】
傷病名コード化サーバ20は、管理コンピュータ21を備えている。管理コンピュータ21は、レセプト電算処理システム40から取り込んだレセプトデータに記録されたコード化されていない傷病名をコード化するための各種処理を実行する。
【0026】
管理コンピュータ21は、図示しないCPU、RAM及びROM等を有し、後述する処理(構成文字抽出段階、語彙候補抽出段階、候補リスト生成段階、組合せ生成段階、コード化段階等を含む処理)を行う。このための傷病名コード化プログラムを実行することにより、管理コンピュータ21は、構成文字抽出手段、語彙候補抽出手段、候補リスト生成手段、組合せ生成手段、コード化手段等として機能する。
【0027】
構成文字抽出手段は、未コード化傷病名に含まれる構成文字を抽出する。
語彙候補抽出手段は、構成文字を先頭文字として記録された語彙候補を、傷病名マスタ及び修飾語マスタに基づいて作成した辞書から抽出する。
【0028】
候補リスト生成手段は、語彙候補に対して出現位置を関連付けた候補リストを生成する。
組合せ生成手段は、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す組合せを生成する。
【0029】
コード化手段は、生成された組合せに基づいて未コード化傷病名をコード化する。
また、管理コンピュータ21は、傷病名マスタデータ記憶部31、修飾語マスタデータ記憶部32、統一化ルールデータ記憶手段としての表記統一マスタデータ記憶部33、コ
ード化前データ記憶部34及びコード化後データ記憶部35に接続されている。
【0030】
傷病名マスタデータ記憶部31には、傷病名と傷病名コードとの対応表を構成する傷病名マスタが記録されている。傷病名マスタの各データ(傷病名マスタデータ)は、傷病名とこの傷病名に対応させた傷病名コードに関するデータにより構成される。傷病名マスタは、公的機関で管理される傷病名マスタから取得して記録され、公的機関で管理される傷病名マスタが更新された場合には、再取得されて更新される。
【0031】
修飾語マスタデータ記憶部32には、修飾語と修飾語コードとの対応表を構成する修飾語マスタが記録されている。修飾語マスタの各データ(修飾語マスタデータ)は、修飾語とこの修飾語に対応させた修飾語コードに関するデータにより構成される。修飾語マスタは、適宜、新たに修飾語が登録されることにより更新される。
【0032】
表記統一マスタデータ記憶部33には、表記のゆれを統一するための置換テーブルを構成する表記統一マスタが記録されている。表記統一マスタの各データ(辞書フィルタデータとしての表記統一マスタデータ)は、置換前の表記及び置換後の表記に関するデータにより構成される。図10に、表記統一マスタを説明するための置換テーブル140を示す。置換テーブル140では、表記統一マスタの置換前のデータと置換後のデータとともに、「備考」として置換内容を示している。表記統一マスタは、適宜、新たに置換前と置換後のデータが登録されることにより更新される。
【0033】
コード化前データ記憶部34には、レセプト電算処理システム40から取り込んだレセプトデータ(コード化前データ)が記録される。このレセプトデータに含まれる傷病名レコードのうち、傷病名コードが「0000999」のものが後述するコード化の対象となる。傷
病名レコードは、「レセプト電算処理システム 磁気レセプトの作成手引き−医科−」(社会保険診療報酬支払基金作成)に従った仕様となっている。
【0034】
傷病名レコードは、レコード識別情報、傷病名コード、修飾語コード及び傷病名称に関するデータを含んで構成されている。
レコード識別情報データ領域には、傷病名レコードを表す識別情報に関するデータが記録される。
【0035】
傷病名コードデータ領域には、該当する傷病名に対応する傷病名コードが記録される。コード化された傷病名を記録する場合には、該当する傷病名に対応する傷病名コードに関するデータが記録される。例えば、「虫垂炎」の場合、傷病名コードとして「5419001」
が記録される。コード化されていない傷病名(未コード化傷病名)を記録する場合、「0000999」が記録される。
【0036】
修飾語コードデータ領域には、該当する修飾語に対応する修飾語コードが記録される。この傷病名コードは、レセプトに表示する順番で記録し、最大20個まで記録可能である。具体的には、修飾語を使用する場合で接頭語付きの場合、例えば「急性虫垂炎」の場合「4012」が記録される。修飾語を使用する場合で接尾語付きの場合、例えば「虫垂炎の疑い」の場合「8002」が記録される。修飾語を使用する場合で両方が付く場合、例えば「急性虫垂炎の疑い」の場合「40128002」が記録される。なお、修飾語を使用しない場合や未コード化傷病名の場合、修飾語コードは記録しない。
【0037】
傷病名称データ領域には、傷病名コードとして未コード化傷病名コード「0000999」を
使用する場合に、文字列で表される傷病名称(未コード化傷病名)に関するデータが記録される。なお、傷病名コードが未コード化傷病名コード「0000999」以外の場合は記録し
ない。
【0038】
このように、傷病名レコードでは、傷病名を1つの傷病名コードと0個以上の修飾語コードとの組合せで表現する。この傷病名レコードの場合と同様に、後述する処理では、1つの傷病名コードと0個以上の修飾語コードとの組合せにより傷病名のコード化を行う。
【0039】
コード化後データ記憶部35には、コード化すべき傷病名レコードについてコード化したレセプトデータ(コード化後データ)が記録される。このコード化後データにおいて、コード化が行われた傷病名レコードには、文字列で表された傷病名称(未コード化傷病名)に基づいてコード化された傷病名コード及び修飾語コードが付加されている。
【0040】
(傷病名のコード化の概要)
次に、本実施形態で実現する傷病名のコード化の概要を説明する。
本実施形態において実現する傷病名のコード化は、以下の3種類に分類できる。すなわち、(1)傷病名と完全一致、(2)傷病名・修飾語と完全一致、(3)傷病名の部分一致の3種類である。(1)傷病名と完全一致の場合、コード化前の傷病名と完全に一致する傷病名を傷病名マスタの中から検索し、対応するコードで置き換える。(2)傷病名・修飾語と完全一致の場合、コード化前の傷病名をひとつの傷病名と複数の修飾語の並びとして分解し、対応するコードで置き換える。なお、後述するように、例えば「急性胃炎」は傷病名「急性胃炎」にコード化する方法と、修飾語「急性」及び傷病名「胃炎」の組合せにコード化する方法があるが、すべての組合せを試みた上で、最長の傷病名にマッチする前者を採用する方式とする。(3)傷病名の部分一致の場合、コード化前の傷病名と部分的に一致する傷病名を傷病名マスタの中から検索し、対応するコードで置き換える。
【0041】
また、レセプト電算処理システムで用いられる傷病名コードや修飾語コードと関連付けることのできる傷病名や修飾語の辞書があれば、どのようなものでも利用可能である。例えば、MEDIS−DC(財団法人 医療情報システム開発センター)がインターネットを通じて配布している「ICD10 対応電子カルテ用標準病名マスタ」等が利用できる。このマスタに収載された傷病名及び修飾語は交換用コードを介して、レセプト電算処理システムの傷病名コード及び修飾語コードと関連付けることができる。
【0042】
図5に、コード化方法について、傷病名と完全一致、傷病名・修飾語と完全一致、未コード化傷病名変換マスタ等による変換、傷病名の部分一致の各場合の事例100を示す。この事例100において、各場合について、コード化前の傷病名(未コード化傷病名)、コード化後の傷病名コード、傷病名、修飾語コード及び修飾語を示す。
【0043】
さらに、コード化の精度を向上させるために、以下のような機能を実現する。
括弧書きの修飾語:未コード化傷病名の中には修飾語を括弧書きで表記しているものが見受けられる。これらは前述の方法では正しく変換できないため、括弧を除外して変換を試みる。図6に、この場合の事例110を示す。
【0044】
表記のゆれ:表記のゆれ(表記は異なるが同義であること)により、傷病名マスタの傷病名と一致しない場合がある。具体的には以下のようなものがある。すなわち、音引き「ー」とハイフン「−」の違い、あるいはその有無、拗音「ゃ」と直音「や」、正字「頸」と異字「頚」、漢字表記「欝」とひらがな表記「うつ」、が表記のゆれに該当する。これらについては傷病名マスタとの突合せを行う前に、追加辞書としての統一マスタデータ記憶部33に記録された統一マスタを用いて表記を統一することによって対応する。図7に、この場合の事例(変換例)120を示す。
【0045】
また、ひとつの傷病名欄に「・」、「+」、「,」等の文字で区切って複数の傷病名を記述している場合がある。これについては区切り文字で分割し、それぞれについて前述の
コード化を行う。図8に、この場合の事例130を示す。
【0046】
(処理手順)
次に、上記のようなシステムを用いて、未コード化傷病名をコード化する場合の処理手順を図2〜図4を用いて説明する。傷病名コード化サーバ20の管理コンピュータ21は、レセプト電算処理システム40からレセプトデータ(コード化前データ)を取り込み、コード化前データ記憶部34に記録する。そして、管理コンピュータ21は、このレセプトデータの傷病名レコードのうち、傷病名コードが「0000999」のものについて以下の処
理を行う。
【0047】
図2に示すように、まず、傷病名コード化サーバ20の管理コンピュータ21は、傷病名マスタデータ記憶部31及び修飾語マスタデータ記憶部32から傷病名マスタ及び修飾語マスタをそれぞれ読み込み、語彙データとしての辞書(電子辞書)を作成する(ステップS1−1)。作成された辞書は、管理コンピュータ21の所定の記憶部(図示せず)に記録される。この辞書を記録することにより、この記憶部は語彙データ記憶手段として機能する。この辞書は、先頭1文字によるインデックス及び傷病名へのリンクによって表現している。この辞書について、図9を用いて説明する。
【0048】
図9に示すように、管理コンピュータ21は、辞書を、傷病名または修飾語の先頭1文字からなるインデックス部60と、単語部70とから構成する。ここで、インデックス部60は傷病名及び修飾語の先頭1文字の配列から構成する。単語部70は傷病名及び修飾語のリストから構成する。単語部70の各レコードは、傷病名・修飾語の別を識別するための区分71、傷病名又は修飾語のコード72、及び、傷病名又は修飾語の名称(辞書登録名称)73により構成する。区分71は、傷病名・修飾語の別を識別するために用いられ、具体的には、「b」は傷病名、「z」は修飾語を表す。コード72は、傷病名コード又は修飾語コードを表す。名称73は、傷病名又は修飾語を表す。このように、管理コンピュータ21は、この辞書の中に、傷病名及び修飾語を混在させて登録する。また、必要に応じて索引テーブル等も同一の辞書に登録する。
【0049】
なお、傷病名及び修飾語を辞書に登録するときは、管理コンピュータ21は、表記統一マスタデータ記憶部33に記録された表記統一マスタを使用して、表記のゆれのある文字列を置換してから登録する。この表記統一マスタの登録データの例は、上述のように、図10に置換テーブル140として示している。例えば、置換前が「ハーラー・シャイエ症候群」である場合、音引きを削除することにより、置換後は「ハラ・シヤイエ症候群」に変換する。
【0050】
以下の処理では、このようにして作成した辞書を用いて処理を行う。なお、複数のコード化対象の傷病名レコード(傷病名コードが「0000999」のもの)が存在する場合、コー
ド化の対象となるすべての傷病名レコードについて、ここで作成され記録された辞書を用いて処理を行う。すなわち、2件目以降のコード化対象の傷病名レコードについては、ステップS1−2以降の処理を実行する。
【0051】
次に、管理コンピュータ21は、コード化対象の傷病名レコードの傷病名の表記(未コード化傷病名)を統一する(ステップS1−2)。具体的には、管理コンピュータ21は、統一マスタデータ記憶部33に記録された表記統一マスタを使用して、上記の辞書の作成の場合と同様の方法で未コード化傷病名を置換する。この処理により、管理コンピュータ21は、上述の図7に示す事例120の各事例のように、表記統一マスタを使用して文字列を置換してコード化を行う。
【0052】
次に、管理コンピュータ21は、候補抽出処理を行う(ステップS1−3)。この候補
抽出処理では、未コード化傷病名(置換が必要な場合は置換後の未コード化傷病名)に出現する辞書中の傷病名及び修飾語をすべて抽出する。この候補抽出処理の手順を図3を用いて説明する。
【0053】
図3に示すように、まず、管理コンピュータ21は、コード化対象の傷病名レコードの傷病名称(未コード化傷病名)を先頭から1文字ずつ走査し、構成文字を1文字特定する(ステップS2−1)。この処理を「急性潰瘍性大腸炎」について行った場合について以下に説明する。すなわち、図11の未コード化傷病名文字列80において、1文字ずつ走査する。ここでは、管理コンピュータ21は、図11に示すように、未コード化傷病名文字列80である「急性潰瘍性大腸炎」の先頭文字の「急」について検索する。
【0054】
そして、管理コンピュータ21は、特定された構成文字を先頭文字とする辞書登録名称の候補を抽出する(ステップS2−2)。具体的には、特定された構成文字1文字に対応するインデックスを用いて、候補となる辞書登録名称のリストを取得する。ここでは、管理コンピュータ21は、図11に示すように、先頭文字が「急」である辞書登録名称を取得する。
【0055】
そして、管理コンピュータ21は、取得されたリストを順次特定して、辞書登録名称の全部と未コード化傷病名の特定された構成文字を先頭とする部分とが一致するかどうかを調べる(ステップS2−3)。例えば、辞書登録名称「急速進行性びまん性半月体形成性糸球体腎炎」は、未コード化傷病名の特定された構成文字を先頭とする部分と一致しない。辞書登録名称の全部と未コード化傷病名の特定された構成文字を先頭とする部分とが一致しない場合(ステップS2−3においてNOの場合)、管理コンピュータ21は、抽出された候補の中から次候補を特定する(ステップS2−6)。そして、特定された次候補について、ステップS2−3〜ステップS2−5の処理を行う。
【0056】
そして、一致する候補を取得した場合(ステップS2−3においてYESの場合)、管理コンピュータ21は、辞書登録名称及びコードと出現位置とを候補リストに記録する(ステップS2−4)。具体的には、傷病名・修飾語の別を識別する区分、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)及び出現位置を候補リストの1レコードとして管理コンピュータ21の図示しない記憶部に記録する。例えば、上記の「急性潰瘍性大腸炎」の事例の場合、順次、上述の処理を繰り返すことにより、図11において太線で示すように、「急性潰瘍性大腸炎」の先頭文字の「急」について、「急性潰瘍性大腸炎」、「急性潰瘍性」、「急性」の3つが得られる。
【0057】
この構成文字に対して抽出された候補についてすべて処理を終了しているわけではない場合(ステップS2−5においてNOの場合)、管理コンピュータ21は、抽出された候補の中から次候補を特定する(ステップS2−6)。そして、特定された次候補について、ステップS2−3〜ステップS2−5の処理を行う。そして、特定された構成文字に対して抽出された候補についてすべて処理を終了した場合(ステップS2−5においてYESの場合)、管理コンピュータ21は、コード化すべき未コード化傷病名中に次の構成文字があるかどうかを調べる(ステップS2−7)。次の構成文字がある場合(ステップS2−7においてYESの場合)、管理コンピュータ21は、ステップS2−1の処理に戻る。そして、未コード化傷病名を先頭から1文字ずつ走査し、未コード化傷病名中の次の構成文字を1文字特定する(ステップS2−1)。「急性潰瘍性大腸炎」の場合、管理コンピュータ21は、2文字目の「性」を特定し、「性」、「潰」、「瘍」・・・「炎」を順次、特定する。
【0058】
このようにして、順に、未コード化傷病名を先頭から1文字ずつ走査し、未コード化傷病名中に次の構成文字がない場合(ステップS2−7においてNOの場合)、管理コンピ
ュータ21は、この候補抽出処理を終了する。「急性潰瘍性大腸炎」のすべての構成文字について検索を行った結果、図12に候補リスト説明表示150として示す候補リストが得られる。候補リスト説明表示150では、傷病名と修飾語とに分けて検索結果を並べ替えたものについて、各候補について種類(傷病名・修飾語の別)、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)、及び出願位置を示している。具体的には、出現位置「0」の「急」を先頭文字とするものとして、「急性潰瘍性大腸炎」(傷病名)、「急性潰瘍性」(修飾語)及び「急性」(修飾語)が得られている。出現位置「2」の「潰」を先頭文字とするものとして、「潰瘍性大腸炎」(傷病名)及び「潰瘍性」(修飾語)が得られている。出現位置「5」の「大」を先頭文字とするものとして、「大腸炎」(傷病名)が得られている。
【0059】
次に、管理コンピュータ21は、組合せ列挙処理を行う(ステップS1−4)。この組合せ列挙処理では、候補抽出処理において抽出された候補の中から、1個の傷病名と0個以上の修飾語から構成される組合せであって傷病名全体を過不足なく表す組合せをすべて生成し、列挙する。
【0060】
この組合せ列挙処理は、具体的には、開始位置「0」を引数として以下の「組合せ列挙処理(N)」を実行することにより行う。この処理は自分自身を再帰的に呼び出すことによって、すべての組合せを見つける。この組合せ列挙処理について図4を用いて説明する。ここでは、上述の事例について図13を用いて説明する。図13では、組合せの説明のために、組合せに従って候補リストの各候補を関連付けて表示している。ここでは、候補リストの各候補について、傷病名・修飾語の別を識別する区分91、候補となる傷病名又は修飾語の辞書登録名称92及び出現位置93とを示す。
【0061】
図4に示すように、まず、管理コンピュータ21は、Nがコード化対象傷病名(未コード化傷病名)の長さ(文字数)以上かどうかを調べる(ステップS3−1)。なお、処理の開始時には、Nは開始位置「0」である。Nがコード化対象傷病名(未コード化傷病名)の長さ以上でない場合(ステップS3−1におてNOの場合)、管理コンピュータ21は、候補リストから先頭の候補を取り出す(ステップS3−2)。上記の事例においては、図13に示すように、取り出された先頭の候補は「急性潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「0」)である。
【0062】
そして、Nが候補の出現位置と一致する場合(ステップS3−3においてNOの場合)、管理コンピュータ21は、この候補を組合せ対象候補として記録する(ステップS3−4)。具体的には、傷病名・修飾語の別を識別する区分、コード(傷病名コード又は修飾語コード)、辞書登録名称(傷病名又は修飾語)、出現位置を記録する。上記の「急性潰瘍性大腸炎」の出現位置は「0」であり、N(=0)と一致するため、この「急性潰瘍性大腸炎」について組合せ対象候補として記録する。具体的には、区分「b(傷病名)」、コード「0091015」、辞書登録名称「急性潰瘍性大腸炎」、出現位置「0」を記録する。
【0063】
次に、管理コンピュータ21は、Nに候補の辞書登録名称の文字数を加えたものをXとする(ステップS3−5)。上記の事例では、「急性潰瘍性大腸炎」の文字数は「8」であるため、「X=8」とする。そして、組合せ列挙処理(X)を呼ぶ(ステップS3−6)。
【0064】
組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数と同じ、すなわち、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0065】
そして、管理コンピュータ21は、組合せ列挙処理(N)において、次の候補があるかどうかを調べる(ステップS3−7)。次の候補がある場合(ステップS3−7においてYESの場合)、管理コンピュータ21は、次候補を取り出す(ステップS3−8)。そして、ステップS3−3の処理に戻り、取り出した候補についてステップS3−3〜ステップS3−6の処理を行う。そして、次の候補がない場合(ステップS3−7においてNOの場合)、この組合せ列挙処理(N)を終了する。
【0066】
以下、上記の事例について、継続して具体的に説明する。
上記の事例では、組合せ列挙処理(N(=0))において、ステップS3−8の処理により、候補リストから候補が順次取り出される。ここで、「潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「2」)については、N(=0)が候補の出現位置「2」と不一致であるため(ステップS3−3においてYESであるため)、ステップS3−4〜ステップS3−6の処理をスキップして次の候補を調べる(ステップS3−7)。また、「大腸炎」(区分「b(傷病名)」、出現位置「5」)についても、N(=0)が候補の出現位置「5」と不一致であるため(ステップS3−3においてYESであるため)、ステップS3−4〜ステップS3−6の処理をスキップして次の候補を調べる(ステップS3−7)。
【0067】
「急性」(区分「z(修飾語)」、出現位置「0」)については、N(=0)が候補の出現位置「0」と一致するため(ステップS3−3においてNOであるため)、組合せ対象候補として記録する(ステップS3−4)。この場合、N(=0)に辞書登録名称の文字数(2)を加えたものをX(=2)とする(ステップS3−5)。そして、組合せ列挙処理(X(=2))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=2))において、「潰瘍性大腸炎」(区分「b(傷病名)」、出現位置「2」)について、X(=2)が候補の出現位置「2」と一致するため(ステップS3−3においてNOであるため)、「潰瘍性大腸炎」について、図13に示すように「急性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=2)に辞書登録名称の文字数(6)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0068】
そして、管理コンピュータ21は、組合せ列挙処理(X(=2))を継続する。この組合せ列挙処理(X(=2))において、次の候補として「潰瘍性」(区分「z(修飾語)」、出現位置「2」)が取り出された場合、この「潰瘍性」については、X(=2)が候補の出現位置「2」と一致する(ステップS3−3においてNOである)。このため、「潰瘍性」について、図13に示すように「急性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=2)に辞書登録名称の文字数(3)を加えたものをX(=5)として(ステップS3−5)、組合せ列挙処理(X(=5))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=5))において、「大腸炎」(区分「b(傷病名)」、出現位置「5」)について、X(=5)が候補の出現位置「5」と一致するため(ステップS3−3においてNOであるため)、「大腸炎」について、図13に示すように「急性」及び「潰瘍性」と関連付けて記録する(ステップS3−4)。この場合、X(=5)に辞書登録名称の文字数(3)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0069】
そして、管理コンピュータ21は、組合せ列挙処理(X(=5))を継続し、次の候補
がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=5))を終了する。さらに、管理コンピュータ21は、組合せ列挙処理(X(=2))を継続し、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=2))を終了する。
【0070】
そして、管理コンピュータ21は、組合せ列挙処理(N(=0))を継続する。この組合せ列挙処理(N(=0))において、次の候補として「急性潰瘍性」(区分「z(修飾語)」、出現位置「0」)が取り出された場合、この「急性潰瘍性」については、N(=0)が候補の出現位置「0」と一致するため(ステップS3−3においてNOであるため)、組合せ対象候補として記録する(ステップS3−4)。この場合、N(=0)に辞書登録名称の文字数(5)を加えたものをX(=5)として(ステップS3−5)、組合せ列挙処理(X(=5))を呼ぶ(ステップS3−6)。この組合せ列挙処理(X(=5))において、「大腸炎」(区分「b(傷病名)」、出現位置「5」)について、X(=5)が候補の出現位置「5」と一致するため(ステップS3−3においてNOであるため)、「大腸炎」について、図13に示すように「急性潰瘍性」と関連付けて組合せ対象候補として記録する(ステップS3−4)。この場合、X(=5)に辞書登録名称の文字数(3)を加えたものをX(=8)として(ステップS3−5)、組合せ列挙処理(X(=8))を呼ぶ(ステップS3−6)。組合せ列挙処理(X(=8))のステップS3−1において、X(=8)は、コード化対象傷病名の文字数以上であるため(ステップS3−1においてYESであるため)、この組合せ列挙処理(X(=8))を終了する。
【0071】
そして、管理コンピュータ21は、組合せ列挙処理(X(=5))を継続する。そして、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(X(=5))を終了する。
【0072】
そして、管理コンピュータ21は、組合せ列挙処理(N(=0))を継続する。そして、次の候補がない場合(ステップS3−7においてNOの場合)、管理コンピュータ21は、この組合せ列挙処理(N(=0))を終了する。
【0073】
この結果、上記の事例の場合は、図14に示す組合せ結果160のように4通りの組合せが得られる。
次に、管理コンピュータ21は、列挙された組合せ結果から、候補の選択を行う(ステップS1−5)。候補の選択は、具体的には以下のように行う。(1)傷病名と完全一致:単一の傷病名で全体に一致するものが見つかった場合、それを選択する。(2)傷病名・修飾語と完全一致:「傷病名と完全一致」に該当するものが存在しない場合で、単一の傷病名及び1つ以上の修飾語で表現されるものが見つかった場合、それを選択する。該当するものが複数存在する場合は傷病名が最も長いものを選択する。上記の事例の場合、図14の組合せ結果160の2,3,4行目がこれに相当し、傷病名が最も長い2行目を選択する(ただし「傷病名と完全一致」に該当するので、実際には選択されない)。(3)傷病名の部分一致:「傷病名と完全一致」及び「傷病名・修飾語と完全一致」に該当するものが存在しない場合で、部分的に傷病名が一致するものがあれば、それを選択する。該当するものが複数存在する場合は傷病名が最も長いものを選択する。なお、列挙された組合せのうち、傷病名(区分「b」)を複数含んでいるものは廃棄する。
【0074】
このようにして候補の選択を行った結果、上記の事例の場合は、図14の組合せ結果160の1行目に相当する傷病名「急性潰瘍性大腸炎」(傷病名コード「0091015」)のみ
からなる組合せが得られる。
【0075】
なお、この候補の選択において結果が得られなかった場合には、未コード化傷病名に含まれる括弧や区切り文字を除外して、上述のステップS1−2〜ステップS1−5の処理
を再度実行する。例えば、未コード化傷病名が「ケロイド(肩、背部)」である場合、括弧及び区切り文字を除外することにより「ケロイド肩背部」に変換する。そして、この「ケロイド肩背部」についてコード化を試みる。除外対象の括弧や区切り文字としては、例えば、「 」(空白文字)、「・」、「ー」、「−」、「(」、「)」等が該当する。なお、上述の図6に示す事例110の各事例は、このように区切り文字を除外してコード化を試みた結果を示している。
【0076】
さらに、ここまでの手順で結果が得られなかった場合は、未コード化傷病名中に出現する区切り文字で未コード化傷病名を分割し、その結果の各々についてステップS1−2〜ステップS1−5の処理を再度実行する。なお、この区切り文字による分割においては、「 」(空白文字)、「・」、「,」、「。」、「、」等を区切り文字として扱う。ただし、括弧で囲まれた文字列の中に区切り文字が出現する場合はそれを区切り文字とみなさない。例えば、未コード化傷病名「潰瘍、ケロイド(肩、背部)」は、「潰瘍」、「ケロイド(肩、背部)」に分割する。なお、上述の図8に示す事例130は、このように未コード化傷病名中に出現する区切り文字で未コード化傷病名を分割し、その結果の各々についてコード化を試みた結果を示している。この事例130の場合、1つの傷病名レコードに対してコード化された傷病名と修飾語との組合せが3つ作成されることになる。なお、このようにして分割された結果のうち、コード化のための候補を特定できなかったものがある場合、候補が特定できなかったものについて、上述のように、括弧や区切り文字を除外して、上述のステップS1−2〜ステップS1−5の処理を再度実行する。
【0077】
次に、管理コンピュータ21は、選択された候補によりコード化を行い、コード化前データの傷病名レコードに、選択された組合せの傷病名コード及び修飾語コードを付加してコード化後データ記憶部35に記録する(ステップS1−6)。なお、選択された組合せにおいて修飾語が複数ある場合には複数の修飾語コードを記録し、修飾語がない場合には修飾語コードの記録は行わない。
【0078】
このようにして、コード化後データ記憶部35には、未コード化傷病名が用いられた傷病名レコード(傷病名コードが「0000999」のもの)については、傷病名レコードに選択
された組合せによる傷病名コード及び修飾語コードが付加されて記録される。なお、もともとコード化されていた傷病名レコード(傷病名コードが「0000999」以外のもの)につ
いては、この傷病名レコードがそのままコード化後データ記憶部35に記録される。また、レセプトデータの傷病名レコード以外のデータについては、コード化前データと同様のデータがコード化後データ記憶部35に記録される。
【0079】
そして、傷病名コード化サーバ20は、未コード化傷病名をコード化したレセプトデータ(コード化後データ)をレセプト電算処理システム40に引き渡す。レセプト電算処理システム40は、このレセプトデータ(コード化後データ)を用いて、レセプトの審査のための処理を行う。
【0080】
以上、本実施形態によれば、以下に示す効果を得ることができる。
・ 上記実施形態では、管理コンピュータ21が、修飾語マスタデータ記憶部32の修飾語マスタと、傷病名マスタデータ記憶部31の傷病名マスタとを用いて辞書(電子辞書)を作成する。そして、未コード化傷病名の構成文字を1文字ずつ抽出し、抽出した構成文字を先頭文字として記録された語彙候補を抽出し、この語彙候補に対して未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する。そして、未コード化傷病名における構成文字の出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて傷病名全体を過不足なく表す語彙候補の組合せを生成し、生成された組合せに基づいて未コード化傷病名をコード化する。これにより、未コード化傷病名の構成文字に基づいて、傷病名と修飾語の組合せを特定し、この組合せに基づいて未コー
ド化傷病名をコード化できる。したがって、文字列で記載された傷病名のコード化を効率的に行うことができる。
【0081】
・ 上記実施形態では、管理コンピュータ21が、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定し、この組合せに含まれる傷病名及び修飾語に対応する傷病名コード及び修飾語コードを付与する。これにより、傷病名と修飾語との組合せを複数生成できた場合に、傷病名の文字数が最も多いものを用いることが可能となる。
【0082】
・ 上記実施形態では、管理コンピュータ21が、表記統一マスタデータ記憶部33に記録された表記統一マスタを用いて、未コード化傷病名の表記を統一化する。これにより、未コード化傷病名の文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0083】
・ 上記実施形態では、管理コンピュータ21が、未コード化傷病名中に区切り文字を検出した場合、検出された区切り文字で未コード化傷病名を分割し、分割された文字列それぞれについて、コード化を行う。これにより、未コード化傷病名に区切り文字が含まれる場合に、この区切り文字で区切った文字列についてそれぞれ傷病名のコード化を行うことができる。
【0084】
・ 上記実施形態では、管理コンピュータ21が、生成した組合せから2以上の傷病名を検出した場合、この組合せを廃棄する。これにより、傷病名を2以上含む組合せを除いて、傷病名と修飾語の組合せを特定して傷病名のコード化を行うことができる。
【0085】
・ 上記実施形態では、管理コンピュータ21が、未コード化傷病名を過不足なく表現する傷病名と修飾語の組合せをすべて列挙し、この中から、傷病名の文字数が最も多いものを選択する。これにより、傷病名マスタと修飾語マスタとを用いて未コード化傷病名を過不足なく表現する傷病名と修飾語との組合せが可能な場合に、必ず、未コード化傷病名を過不足なく表現する組合せを特定できる。
【0086】
・ 上記実施形態では、管理コンピュータ21が、傷病名マスタ及び修飾語マスタについても表記統一マスタデータ記憶部33に記録された表記統一マスタを用いて、表記を統一化する。これにより、傷病名マスタ及び修飾語マスタの各登録データに表記(文字列)のゆれがある場合にも、この文字列のゆれを解消して、表記を統一化することができる。そして、この統一化された表記を用いて、傷病名のコード化を行うことができる。
【0087】
なお、上記実施形態は、以下の態様に変更してもよい。
○ 上記実施形態では、レセプトデータの傷病名レコードにおいて傷病名がコード化されていない場合に未コード化傷病名をコード化した。これに代えて、管理コンピュータ21が、レセプトデータの傷病名レコードに含まれる傷病名コードと修飾語コードを、上記実施形態の辞書(電子辞書)を用いて語彙に変換して未コード化傷病名を生成し、この未コード化傷病名に対して、再度、傷病名のコード化を行ってもよい。これにより、傷病名と修飾語との組合せが複数可能な未コード化傷病名について、レセプトデータ中の傷病名レコードに含まれる傷病名コードと修飾語コードにかかわらず、再度、傷病名のコード化を行うことが可能となる。したがって、同じ未コード化傷病名に対して統一された傷病名コード及び修飾語コードを用いることができる。
【0088】
○ 上記実施形態では、傷病名のコード化を行う際に、辞書の作成を行った。これに代えて、傷病名マスタデータ記憶部31、修飾語マスタデータ記憶部32又は統一マスタデータ記憶部33が更新された場合に、辞書の作成を行ってもよい。そして、作成した辞書
データを記録しておき、傷病名のコード化を行う際にこの辞書データを用いてもよい。これにより、傷病名のコード化を行う際の処理を効率化できる。
【0089】
○ 上記実施形態では、候補抽出処理(ステップS1−3)において、未コード化傷病名の構成文字を1文字ずつ特定して、それぞれ特定された構成文字を先頭文字とする候補を抽出した。これに代えて、候補の抽出状況に応じて、未コード化傷病名の構成文字を先頭文字とする候補の抽出を行ってもよい。例えば、上記の事例の場合、出現位置「0」では「急性潰瘍性大腸炎」(8文字)、「急性」(2文字)、「急性潰瘍性」(5文字)のみが検索されており、1文字のものは検索されていないため、「性」(出現位置「1」)を先頭文字とする候補の検索は行わずに、次に「潰」(出現位置「2」)を先頭文字とする候補の検索を行ってもよい。これにより、処理を効率化できる。
【0090】
○ 上記実施形態では、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定した。これに代えて、傷病名の文字数が最も少ない組合せを特定してもよい。このように傷病名の文字数が最も少ない組合せを選択する場合、修飾語を除外した傷病名をコードとして得ることができ、例えば、統計用途として用いる場合に便利である。
【0091】
○ 上記実施形態では、傷病名のコード化の処理を一括処理で行い、複数の組合せが生成された場合に、各組合せにおける傷病名の文字数が最も多い組合せを特定し、この組合せに対応する傷病名コード及び修飾語コードを自動的に設定した。これに代えて、対話処理により傷病名のコード化を行う場合に本発明を適用し、複数の組合せが生成された場合に、管理コンピュータ21が、生成された組合せに優先順位を付与してこの優先順位に従って組合せを出力し、この中からユーザが組合せを特定してもよい。例えば、傷病名の文字数が多いものを優先的に選択する場合、管理コンピュータ21が傷病名の文字数が多い順番に組合せを出力して、この中からユーザが組合せを特定する。この場合、傷病名の文字数が多い順番に出力されていることにより、ユーザは、出力された順番にユーザが傷病名と修飾語との組合せを確認して、効率的に組合せの選択を行うことができる。
【0092】
○ 上記実施形態では、レセプトデータに含まれる傷病名レコード中の傷病名称(未コード化傷病名)をコード化する場合に本発明を具体化したが、本発明はこれに限られるものではない。本発明は、文字列で記録された傷病名をコード化する場合に用いることができ、例えば、電子カルテ等に記録する傷病名をコード化する場合に用いることができる。
【図面の簡単な説明】
【0093】
【図1】本発明の一実施形態のシステムの概略図。
【図2】本発明の一実施形態の処理手順の説明図。
【図3】本発明の一実施形態の処理手順の説明図。
【図4】本発明の一実施形態の処理手順の説明図。
【図5】本発明の傷病名のコード化方法の事例を示す説明図。
【図6】本発明の傷病名のコード化方法の事例を示す説明図。
【図7】本発明の傷病名のコード化方法の事例を示す説明図。
【図8】本発明の傷病名のコード化方法の事例を示す説明図。
【図9】辞書データの説明図。
【図10】表記統一マスタの説明図。
【図11】候補抽出処理についての説明図。
【図12】候補抽出処理についての説明図。
【図13】組合せ列挙処理についての説明図。
【図14】組合せ列挙処理についての説明図。
【符号の説明】
【0094】
21…管理コンピュータ、31…傷病名マスタデータ記憶部、32…修飾語マスタデータ記憶部、33…統一化ルールデータ記憶手段としての統一マスタデータ記憶部。
【特許請求の範囲】
【請求項1】
傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化する傷病名コード化方法であって、
前記コンピュータが、
前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出段階と、
前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出段階と、
前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成段階と、
前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成段階と、
前記生成された組合せに基づいて未コード化傷病名をコード化するコード化段階と
を実行することを特徴とする傷病名コード化方法。
【請求項2】
前記コンピュータが、
前記組合せ生成段階において複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する段階をさらに実行することを特徴とする請求項1に記載の傷病名コード化方法。
【請求項3】
表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、
前記コンピュータが、
前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する段階を更に実行することを特徴とする請求項1又は2に記載の傷病名コード化方法。
【請求項4】
前記コンピュータが、
未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割する段階をさらに実行し、
分割された文字列それぞれについてコード化を行うことを特徴とする請求項1〜3のいずれか1つに記載の傷病名コード化方法。
【請求項5】
前記コンピュータが、
受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する段階をさらに実行し、
この生成された未コード化傷病名をコード化することを特徴とする請求項1〜4のいずれか1つに記載の傷病名コード化方法。
【請求項6】
傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化するための傷病名コード化プログラムであって、
前記コンピュータを、
前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出手段と、
前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出手段と、
前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成手段と、
前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用い
て未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成手段と、
前記生成された組合せに基づいて未コード化傷病名をコード化するコード化手段
として機能させるための傷病名コード化プログラム。
【請求項7】
前記コンピュータを、更に、
前記組合せ生成手段で複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する手段として機能させることを特徴とする請求項6に記載の傷病名コード化プログラム。
【請求項8】
表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、
前記コンピュータを、更に、
前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する手段として機能させることを特徴とする請求項6又は7に記載の傷病名コード化プログラム。
【請求項9】
前記コンピュータを、更に、
未コード化傷病名中に区切り文字を検出した場合に、前記区切り文字で前記未コード化傷病名を分割する手段として機能させ、
分割された文字列それぞれについてコード化を行うことを特徴とする請求項6〜8のいずれか1つに記載の傷病名コード化プログラム。
【請求項10】
前記コンピュータを、更に、
受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する手段として機能させ、
この生成された未コード化傷病名をコード化することを特徴とする請求項6〜9のいずれか1つに記載の傷病名コード化プログラム。
【請求項1】
傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化する傷病名コード化方法であって、
前記コンピュータが、
前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出段階と、
前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出段階と、
前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成段階と、
前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用いて未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成段階と、
前記生成された組合せに基づいて未コード化傷病名をコード化するコード化段階と
を実行することを特徴とする傷病名コード化方法。
【請求項2】
前記コンピュータが、
前記組合せ生成段階において複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する段階をさらに実行することを特徴とする請求項1に記載の傷病名コード化方法。
【請求項3】
表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、
前記コンピュータが、
前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する段階を更に実行することを特徴とする請求項1又は2に記載の傷病名コード化方法。
【請求項4】
前記コンピュータが、
未コード化傷病名中に区切り文字を検出した場合、前記区切り文字で前記未コード化傷病名を分割する段階をさらに実行し、
分割された文字列それぞれについてコード化を行うことを特徴とする請求項1〜3のいずれか1つに記載の傷病名コード化方法。
【請求項5】
前記コンピュータが、
受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する段階をさらに実行し、
この生成された未コード化傷病名をコード化することを特徴とする請求項1〜4のいずれか1つに記載の傷病名コード化方法。
【請求項6】
傷病名及び傷病名コードを含む語彙データと修飾語及び修飾語コードを含む語彙データとを記録した語彙データ記憶手段と、コンピュータとを用いて、文字列で記載された未コード化傷病名をコード化するための傷病名コード化プログラムであって、
前記コンピュータを、
前記未コード化傷病名に含まれる構成文字を抽出する構成文字抽出手段と、
前記構成文字を先頭文字として記録された語彙候補を前記語彙データ記憶手段から抽出する語彙候補抽出手段と、
前記語彙候補に対して前記未コード化傷病名における構成文字の出現位置を関連付けた候補リストを生成する候補リスト生成手段と、
前記出現位置と語彙候補の文字数とに基づいて、候補リストに含まれる語彙候補を用い
て未コード化傷病名の全体を過不足なく表す語彙候補の組合せを生成する組合せ生成手段と、
前記生成された組合せに基づいて未コード化傷病名をコード化するコード化手段
として機能させるための傷病名コード化プログラム。
【請求項7】
前記コンピュータを、更に、
前記組合せ生成手段で複数の組合せが生成された場合に、各組合せにおける傷病名の文字数に基づいて、前記生成された組合せに優先順位を付与する手段として機能させることを特徴とする請求項6に記載の傷病名コード化プログラム。
【請求項8】
表記を統一化する辞書フィルタデータを記録した統一化ルールデータ記憶手段を更に用いて、
前記コンピュータを、更に、
前記未コード化傷病名について、前記辞書フィルタデータを用いて表記を統一化する手段として機能させることを特徴とする請求項6又は7に記載の傷病名コード化プログラム。
【請求項9】
前記コンピュータを、更に、
未コード化傷病名中に区切り文字を検出した場合に、前記区切り文字で前記未コード化傷病名を分割する手段として機能させ、
分割された文字列それぞれについてコード化を行うことを特徴とする請求項6〜8のいずれか1つに記載の傷病名コード化プログラム。
【請求項10】
前記コンピュータを、更に、
受信したレセプトデータに含まれる傷病名コードと修飾語コードを、前記語彙データ記憶手段を用いて語彙に変換して未コード化傷病名を生成する手段として機能させ、
この生成された未コード化傷病名をコード化することを特徴とする請求項6〜9のいずれか1つに記載の傷病名コード化プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2006−309585(P2006−309585A)
【公開日】平成18年11月9日(2006.11.9)
【国際特許分類】
【出願番号】特願2005−132891(P2005−132891)
【出願日】平成17年4月28日(2005.4.28)
【出願人】(592131906)みずほ情報総研株式会社 (187)
【公開日】平成18年11月9日(2006.11.9)
【国際特許分類】
【出願日】平成17年4月28日(2005.4.28)
【出願人】(592131906)みずほ情報総研株式会社 (187)
[ Back to top ]