特許第5969266号(P5969266)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許5969266データ処理プログラム、画像表示システムおよびデータ処理方法
<>
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000002
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000003
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000004
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000005
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000006
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000007
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000008
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000009
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000010
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000011
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000012
  • 特許5969266-データ処理プログラム、画像表示システムおよびデータ処理方法 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5969266
(24)【登録日】2016年7月15日
(45)【発行日】2016年8月17日
(54)【発明の名称】データ処理プログラム、画像表示システムおよびデータ処理方法
(51)【国際特許分類】
   G06Q 50/24 20120101AFI20160804BHJP
【FI】
   G06Q50/24
【請求項の数】5
【全頁数】13
(21)【出願番号】特願2012-117829(P2012-117829)
(22)【出願日】2012年5月23日
(65)【公開番号】特開2013-246500(P2013-246500A)
(43)【公開日】2013年12月9日
【審査請求日】2015年1月27日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100114258
【弁理士】
【氏名又は名称】福地 武雄
(74)【代理人】
【識別番号】100125391
【弁理士】
【氏名又は名称】白川 洋一
(72)【発明者】
【氏名】小川 圭介
(72)【発明者】
【氏名】橋本 真幸
(72)【発明者】
【氏名】松本 一則
【審査官】 青柳 光代
(56)【参考文献】
【文献】 特開2012−063997(JP,A)
【文献】 特開2001−028005(JP,A)
【文献】 特開2009−245128(JP,A)
【文献】 特開2012−079200(JP,A)
【文献】 再公表特許第2012/008264(JP,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 − 99/00
(57)【特許請求の範囲】
【請求項1】
ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの表示倍率によって定まる1ドットあたりの表示時間の大きさを表わす時間粒度に応じて表示するために前記時系列データの処理を行なうデータ処理プログラムであって、
前記時系列データを時間粒度毎にまとめた独立したデータベーステーブルとして保存する処理と、
前記時系列データの所定期間内の発生間隔に基づいて、前記各時系列データの平均周期を検出する処理と、
前記検出した平均周期、並びに前記平均周期を検出した時系列データの入力が開始された時刻および最後に入力された時刻を含むデータを構造化データとして前記時間粒度毎に作成する処理と、
いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記構造化データを用いて画面にグラフを描画する処理と、の一連の処理を、コンピュータに実行させることを特徴とするデータ処理プログラム。
【請求項2】
前記各データベーステーブルの時系列データ数を検出する処理をさらに含み、
前記時系列データ数が、前記各データベーステーブル間で一定割合以上減少したときは、前記時系列データ数の多い時系列データの時間粒度以下の時間粒度に対応するデータベーステーブルのデータのまとまりを一群の時系列データとして抽出し、前記抽出した一群の時系列データを構造化データとすることを特徴とする請求項1記載のデータ処理プログラム。
【請求項3】
ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの表示倍率によって定まる1ドットあたりの表示時間の大きさを表わす時間粒度に応じて表示するために前記時系列データの処理を行なうデータ処理プログラムであって、
前記時系列データを、時間粒度毎にまとめた独立したデータベーステーブルとして保存する処理と、
前記時系列データの所定期間内の発生間隔に基づいて、前記各時系列データの平均周期を検出する処理と、
前記各データベーステーブルの時系列データ数を検出する処理と、
特定の時間粒度におけるデータベーステーブルの時系列データ数が、前記特定した時間粒度よりも小さい時間粒度におけるデータベーステーブルの時系列データ数に対して一定割合以上減少した時は、前記特定の時間粒度よりも小さい時間粒度におけるデータベーステーブルの時系列データのまとまりを一群の時系列データとして抽出し、前記一群の時系列データにおける平均周期、並びに前記平均周期を検出した時系列データの入力が開始された時刻および最後に入力された時刻を含む構造化データを、前記時間粒度毎に作成する処理と、
いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記構造化データを用いて画面にグラフを描画する処理と、の一連の処理を、コンピュータに実行させることを特徴とするデータ処理プログラム。
【請求項4】
前記一群の時系列データから、データの平均周期の偏りを検出し、前記検出した平均周期の偏りが一定以上である場合に、前記構造化データを作成することを特徴とする請求項2または請求項3記載のデータ処理プログラム。
【請求項5】
ディスプレイ画面上に表示する複数の時系列データを、ディスプレイ表示倍率によって定まる1ドットあたりの表示時間の大きさを表わす時間粒度に応じて表示するために前記時系列データの処理を行なうデータ処理方法であって、
前記時系列データを時間粒度毎にまとめた独立したデータベーステーブルとして保存するステップと、
前記時系列データの所定期間内の発生間隔に基づいて、前記各時系列データの平均周期を検出するステップと、
前記検出した平均周期、並びに前記平均周期を検出した時系列データの入力が開始された時刻および最後に入力された時刻を含むデータを構造化データとして前記時間粒度毎に作成するステップと、
いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記構造化データを用いて画面にグラフを描画するステップと、を少なくとも含むことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で多段階に表示するために時系列データの処理を行なう技術に関する。
【背景技術】
【0002】
従来から、時系列データを取り扱うシステムとして、電子カルテシステムなどの医療情報システムが知られている。例えば、特許文献1には、医療行為の相互間の関係を考慮し、効率よく医療情報を入力して電子カルテを構築する電子カルテシステムが開示されている。この電子カルテシステムは、医療行為およびその関連情報を含む医療行為情報と、この医療行為情報の適用時間情報とにより電子カルテ情報を構成する。また、その電子カルテ情報の医療行為情報を時間軸上に閲覧情報として表示する。また、編集中の電子カルテ情報における医療行為情報を時間軸上に表示させる。そして、ユーザの操作を受け付けて、電子カルテにおける医療行為情報を編集する。
【0003】
図9は、一つの例として選択した電子カルテシステムの画面表示例を示す図である。図9に示すように、この電子カルテシステムは、多段階の時間軸(例えば、年単位・月単位・日単位)を有する。また、その下に診療行為(オブジェクト)が表示される。この電子カルテシステムでは、左に並ぶ項目が医療行為(病名・投薬・診断・検査等)であって、その右側に実際の行為が、一定の時間幅をもって記録される。
【0004】
ユーザは、上部の時間軸を選択することで、任意の尺度での情報俯瞰が可能であり、任意の時間にジャンプすることができる。また、特定の行為項目のデータの詳細な情報を閲覧しようとする場合は、複数の行為項目をドラッグ操作で囲むことで、詳細情報を表示することが可能である。
【0005】
このように、従来の電子カルテシステムでは、上記のような多段階のタイムスケールを表示し、ユーザは、任意のタイムスケールで時系列に沿って入力されたデータを俯瞰することができる。そして、任意のタイムスケール上で各行為項目の詳細情報を表示し、閲覧することができる。
【0006】
このような電子カルテシステムにより、例えば、患者に対する投薬や検査の実施行為に関する医療情報のグラフ化を様々な時間粒度で表示することが可能となる。時間粒度とは、ディスプレイの1ドットあたりの表示時間(msec/dot)であり、データを閲覧する際の時間幅とグラフ画像のサイズによって決定される。これは、特定サイズのディスプレイに時系列データを表示する際に、表示幅を変更することを考えたとき、プログラム上で表現できる最も小さい時間幅から、表示幅を拡大した際の倍率、拡大率と同義である。また、同時に複数の行為項目を表示することによって、様々な項目間の関係を種々の時間粒度で閲覧することが可能となる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−192002号公報
【特許文献2】特開2009−134713号公報
【特許文献3】特開2009−282557号公報
【非特許文献】
【0008】
【非特許文献1】電子情報通信学会 Vol100,p50−p60
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、従来のシステムが処理すべきデータの数は極めて多い。例えば、糖尿病患者であれば、毎日投薬や検査がなされ、これらは年のスケールでは365のデータ数を持つ。これに加え、これら投薬や検査の種類は数百に及ぶことが多い。そのため、これらを表すデータオブジェクト数は一般的には数千から数万へと膨れ上がる。サーバ・クライアントで構成されるシステムにおいて、これらのデータを表示する際に、ユーザが操作してからグラフを描画するまでの反応速度が落ちてしまう。
【0010】
このような場合、予めグラフを伝送する際の倍率を決めておき、その倍率においてグラフ描画に必要なデータを準備しておくことによって、高速にグラフを描画し、伝送することが可能となる。図10は、タイムスケールと表示倍率を示す図である。図10に示す倍率において、グラフ描画に必要なデータを予め作成することにより、最小限のデータ数でグラフを描画し、伝送を行なうことが可能となる。すなわち、図10に示すように、伝送番号1〜20に相当する倍率において、グラフを描画する際に必要なデータのみを1つの独立したテーブルであるデータベーステーブルとして保持することで、不必要なデータのサーチが必要なくなり、グラフ作成時間を短縮することが可能となる。
【0011】
一般的に、ある種の時系列に従った知識を管理する場合、複数の時系列データを横断的に閲覧することが望ましい。例えば、医療情報については、投薬情報と検査情報は横断的に閲覧する必要がある。一方、これらのデータの発生間隔は様々に存在する。
【0012】
上記のように、例えば、秒・分・時間・日・月・年・10年といった、小さいタイムスパンから大きいタイムスパンで表示するシステムでは、このような様々なタイムスパンを持つデータをプロットして表現することができるため、時系列データの推移を俯瞰的に把握することに適している。
【0013】
ところで、一般的に、自然界に存在するデータを時系列的にプロットする場合、その発生間隔には、データ固有の平均的な周期が存在することが多い。医療で用いられるデータを例に取ると、例えば、糖尿病慢性疾患の患者の投薬発生イベントに関するデータは、血糖改善剤等を毎食後服用し、血糖検査を毎食後行なうため、3〜4時間に1回程度の発生間隔で発生することが多く、数分単位・数年単位での発生間隔はとらないことが多い。
【0014】
上記のようなデータを、従来技術のシステム上で時系列プロットをして表現する場合、時系列的に表示する時間スパンを変化させたとき、グラフ上の視認できるデータの数は特定の時間粒度付近(図10では伝送番号)で大きく減少しはじめる。これは、表示するデータの性質に応じて決定される、平均周期が閲覧不能になる(1ドット以下になる)際の拡大率が存在するためである。これはデータによって大きく異なる。
【0015】
これを直感的に理解するために、横軸にデータを表示するための時間幅、縦軸を表示可能なデータプロット数ととると、それらがシグモイド形状をとる。すなわち、視認できるデータ数が急激に低下する。このような場合、特に視認性が低下する領域で細かく倍率を設定し、視認できるデータのみを持つ複数段階のDBテーブルを準備することで、グラフを描画する際のデータ数を抑えることができ、レスポンススピードを向上させることが可能となる。このような手法は、上記のような平均周期を持つデータ発生間隔が正規分布のような、比較的なだらかな分布に従う場合は、極めて効率的に動作する。
【0016】
しかしながら、データ発生間隔が、べき分布や指数分布等、分散が小さく、平均付近にデータが大きく偏ってしまう分布(分散の小さい正規分布もこれに該当する)に従う場合は、平均周期が閲覧不能になる(1ドット以下になる)際の拡大率付近におけるDBテーブルでは、1画面中に表示するデータの数が最も大きくなってしまい、処理負荷軽減効果が薄くなってしまうという問題があった。このような分布を持つデータの処理時間と拡大率の関係を示すグラフは、例えば、図11に示すような形状となっている。これに対し、図12は、データの分布が比較的分散の大きい場合のグラフである。図11および図12において、横軸はレベル(時間粒度・拡大率)を表しており、縦軸が処理時間を表している。濃く塗りつぶされたグラフが通常の方式であり、薄く塗りつぶされたグラフが上記の提案方式による処理時間を表す。より大きなレベルでは提案方式が有効であり、処理時間が大幅に短縮されている。しかし、レベル15(図10に示すテーブル参照)近辺では、あまり処理時間が変わっていない。これはデータの平均周期にあたるデータ間隔がグラフ上で視認可能になる倍率である。すなわち、このレベル以上において、画面内で徐々に視認不可能な点が増加し始める。
【0017】
このように、データの発生周期に比較的分散が大きい正規分布を仮定した場合は、周期が比較的ばらつくため、上記のような処理時間が極端に遅くなる拡大率はあまり存在しない一方、偏りが大きく分散が小さい分布を仮定した場合は、平均周期の偏りが激しいため、上記のように平均周期がデータ上マージされる拡大率までは、処理時間が上昇してしまう。この平均周期が一定以上の間隔を持っている場合、大きな処理時間がかかってしまうという問題がある。また、このシステムで使用するデータは、患者に対する投薬や検査についての時系列プロットが多く、投薬は日々行なわれるのに対して、検査は、月単位や週単位で行なわれることが多い。そのため、投薬に関する時系列プロットの方について、データ量が大きくなりがちである。このため、投薬データのデータ量を減少させることによって、システムの速度向上を図ることが見込まれる。ここで、慢性期患者の投薬に関する情報は、医師が処方を行った段階で記録され、一定の値を一定の期間投与すると推定されて記録されたデータが多いことから、単純な繰り返しとなることが多い。
【0018】
本発明は、このような事情に鑑みてなされたものであり、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことができるデータ処理プログラム、画像表示システムおよびデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【0019】
(1)上記の目的を達成するために、本発明は、以下のような手段を講じた。すなわち、本発明のデータ処理プログラムは、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で多段階に表示するために前記時系列データの処理を行なうデータ処理プログラムであって、前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存する処理と、前記時系列データの所定期間内の発生間隔に基づいて、前記各時系列データに固有の平均周期を検出する処理と、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成する処理と、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画する処理と、の一連の処理を、コンピュータに実行させることを特徴とする。
【0020】
このように、各時系列データの平均周期を検出し、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成し、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するので、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことが可能となる。
【0021】
(2)また、本発明のデータ処理プログラムは、前記時間粒度順で前記各データベーステーブルの時系列データ数を検出する処理をさらに含み、前記検出した時系列データ数が、前記各データベーステーブル間で一定割合以上減少したときは、その時間粒度以下の時間粒度に対応する各時系列データを一群の時系列データとし、前記一群の時系列データの平均周期を検出することを特徴とする。
【0022】
このように、時間粒度順で前記各データベーステーブルの時系列データ数を検出する処理をさらに含み、前記検出した時系列データ数が、前記各データベーステーブル間で一定割合以上減少したときは、その時間粒度以下の時間粒度に対応する各時系列データを一群の時系列データとし、前記一群の時系列データの平均周期を検出するので、処理速度を向上させることが可能となる。
【0023】
(3)また、本発明のデータ処理プログラムにおいて、前記時系列データの発生間隔の分布は、時間軸上で偏りが大きく分散が極端に小さいことを特徴とする。
【0024】
このように、時系列データは、単純な繰り返しとなるデータとなることが多いため、平均周期を有する連続した時系列データを単一のデータとして取り扱うことによって、処理速度を向上させることが可能となる。
【0025】
(4)また、本発明の画像表示システムは、画像を表示する画面を備え、上記(1)から(3)のいずれかに記載のデータ処理プログラムを実行する画像表示システムであって、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて前記画面にグラフを描画することを特徴とする。
【0026】
このように、各時系列データの平均周期を検出し、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成し、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するので、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことが可能となる。
【0027】
(5)また、本発明のデータ処理方法は、ディスプレイ画面上に表示する複数の時系列データを、ディスプレイの1ドットあたりの表示時間である時間粒度で多段階に表示するために前記時系列データの処理を行なうデータ処理方法であって、前記時系列データを視認可能に表示する時間粒度毎に、前記時系列データを1つの独立したデータベーステーブルとしてデータベースに保存するステップと、前記時系列データの所定期間内の発生間隔に基づいて、前記各時系列データに固有の平均周期を検出するステップと、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成するステップと、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するステップと、を少なくとも含むことを特徴とする。
【0028】
このように、各時系列データの平均周期を検出し、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成し、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するので、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことが可能となる。
【発明の効果】
【0029】
本発明によれば、各時系列データの平均周期を検出し、前記検出した平均周期、並びに前記時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを前記時間粒度毎に作成し、いずれかの前記時間粒度が指定されグラフを描画する旨の要求があったときに、前記指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するので、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことが可能となる。
【図面の簡単な説明】
【0030】
図1】本実施形態に係るデータ処理プログラムを実行する際に機能的なモジュールを示す図である。
図2】データ処理プログラムの動作を示すフローチャートである。
図3】構造化データのフォーマットを示す図である。
図4】構造化データのフォーマットを示す図である。
図5】投薬間隔とデータ数を示す図である。
図6】タイムスケールとレベルを示す図である。
図7】構造化データのフォーマットを示す図である。
図8】レベルと1画面内に表現できるデータの個数を示す図である。
図9】電子カルテシステムの画面表示例を示す図である。
図10】20段階のデータベーステーブルを示す図である。
図11】極めて偏りが大きい分布を持つデータの処理時間と拡大率の関係を示すグラフを示す図である。
図12】データの分布が正規分布形状に近い場合のグラフを示す図である。
【発明を実施するための形態】
【0031】
本実施形態では、平均周期を持つ連続した時系列データを、単一のデータとして取り扱うことによって、グラフ描画の処理速度の向上を図る。これは、偏りが大きく分散が小さい分布の方が時間的に繰り返しデータとして扱いやすいという性質によっている。つまり、時系列データから平均周期を検出し、平均周期を表す値とともに単一のデータを作成し、グラフ描画要求とともに当該データを使ってグラフの描画を行なう。ここで、平均周期は、複数種類あっても良い。
【0032】
図1は、本実施形態に係るデータ処理プログラムを実行する際に機能的なモジュールを示す図である。データ処理スクリプト1からの情報に基づいて、グラフ作成部3は、グラフを描画する。このとき、データ検出部5を介して、データベース7から所望のデータを検出する。データベース7には、多数の時系列データが格納されている。これらの時系列データは、1つの独立したデータベーステーブル毎に格納される。データ取得部9は、データベース7から所望のデータを取得し、または逐次入力される時系列データを取得する。登録データカウント部11は、時間粒度順で、データ取得部9が取得したデータ数をカウントする。
【0033】
テーブル特定部15は、しきい値保持部25からしきい値を取得し、データベーステーブル間で、時系列データ数が一定割合以上減少するデータベーステーブルを特定する。まとまり検出部17は、上記のように特定したデータベーステーブルを基準として、隣り合うデータベーステーブルのうち、順位が上位のデータベーステーブルのデータ間の時間の切れ目をデータの切れ目として、隣り合うテーブルのうち、順位が下位のデータベーステーブルのデータのまとまりを検出する。
【0034】
平均周期検出部19は、上記のように検出したデータのまとまりについて、各データの時間間隔をカウントし、最も数の多い時間間隔を平均周期とする。ここで、当該平均周期と異なる時間間隔があった場合、そのデータの間で、データのまとまりを分割する。このまとまりの中のデータの時間間隔、つまりデータの開始時間(例えば投薬や点滴などの開始時間)と次のデータの開始時間(例えば投薬や点滴などの終了時間)の間隔は、全て同じになっている。データ作成部21は、上記平均周期に基づいて、データを構造化データとして作成し、データ登録部23は、作成した構造化データをデータベース7に登録する。
【0035】
図2は、以上のように構成されたデータ処理プログラムの動作を示すフローチャートである。まず、図10に示したように、既に20段階のデータベーステーブルが登録されている状態における動作について説明する。各々のデータベーステーブルのデータ数を検出する(ステップS1)。テーブル番号間で、データ数の変化が一定割合以上のデータ数の減少が見られた場合(ステップS4)、隣り合うテーブルの内、上位のテーブルのデータ間の時間の切れ目をデータの切れ目として(ステップS5)、隣り合うテーブルの内、下位のテーブルのデータのまとまりを抽出する(ステップS6)。以下、このデータのまとまりに対して、ロジックを適用する。
【0036】
次に、ステップS6でまとめられたデータから、周期の偏りを検出し(ステップS7)、周期の偏りが一定以上であるかどうかを判定する(ステップS8)。周期の偏りが一定以上である場合は、構造化データを作成し(ステップS9)、データベースに登録する(ステップS10)。すなわち、時間間隔を数え上げて、最も数の多い時間間隔が平均周期となる。この際に数え上げた時間間隔の数が、全体の中で一定しきい値以上の割合を占めていれば、それが平均周期である。なお、データサンプリング等を行なっても良い。もし、割合が一定に達しない場合、本実施形態では、偏りが大きく分散が小さい分布を仮定しているため、ごく近い平均周期が複数存在する場合と考えられる。この場合、これらの数の分散が大きすぎる場合は平均周期を取ることが難しいデータである。
【0037】
なお、医師がデータを入力する際、周期の記録を行なえばより効率的である。1データを入力するたびに、前のデータとの間隔を計算し、カウントする手法である。つまり、医師のデータ入力が行なわれ、当該データの1つ前のデータとの時間差を計算し、カウントする、といったシステムである。
【0038】
また、周期を持つ単一のデータの作成は、以下のように行なう。すなわち、上記のデータを構造化データとして保持する。図3に示すフォーマットを使うことが可能である。当該フォーマットに関して、error部分が十分小さければ極めて高速な処理が可能である。なお、図3において、“補正”の記述は、周期があると仮定したデータについて、定型的な時間間隔や値にずれがあった場合は、ここで補正する。なお、この構造化データは、複数の周期に関するものであっても良い。
【0039】
以上のような構造化データが作成されると、グラフ描画要求に応じて、グラフの描画を行なう。例えば、図4に示すようなデータであって、要求されたグラフの描画領域が2005/1/1〜2006/1/1であるときは、この間を1日単位で繰り返すようなグラフ描画をすれば良い。最後にerrorタグに相当する箇所を修正すれば、完了である。
【0040】
このように処理することによって、当該区間に大量のデータがあった場合であっても、データクエリ1回での処理が可能である。
【0041】
次に、データベースが登録されていない場合について説明する。図2において、すべてのデータを取得し(ステップS2)、最も下位のデータベーステーブルから、データを登録する(ステップS3)。ステップS4以降は上記と同様である。
【0042】
なお、上記の処理方法ではなく、下記の手法を用いても良い。
(1)全データからデータをサンプリングする。
(2)サンプリングしたデータについて、データ間隔の度数を計測する。
(3)最も度数の高い(あるいは一定以上の割合の)時間間隔について、マージされるテーブル番号を特定する。
【0043】
また、患者病名を予め取得し、慢性期患者のみを対象にするようにしても良い。
【実施例1】
【0044】
ここでは、例えば、ネフローゼ症候群患者に投与された「****錠」の投薬記録を元に例示する。本データの値は全て1(個)であり、図5に示すような投薬間隔とデータ数を持っている。個数数え上げによれば、投薬間隔86400000のデータ間隔数が極めて大きく、全体の99%以上の個数を占めている。そこで、本投薬間隔を平均周期とする。この検出には、数が大きすぎる場合はランダムサンプリングでも良い。
【0045】
続いて、時間ギャップの探索を行なう。データの先頭から投薬間隔を計算し、平均周期と異なる場合にチェックをつける。この場合、604800000のデータ間隔が最初にヒットする。ここまで数え上げたデータ数は104であり、十分個数データが存在していると考えられるため、先頭から104までのデータをまとめて1つのデータとする。また、604800000は、平均周期に比べて極めて大きいため、時間ギャップとみなすことができる。一定値以下に収まる場合は、平均周期からたまたまずれた値とみなす。
【0046】
この“大きい”の判断基準としては、同一レベルでのマージが発生しないことを条件にすれば良い。図6に示すレベルに従えば、本平均周期はレベル16でマージされる一方で604800000はレベル19でマージされるため、十分大きな時間ギャップであるといえる。続いて、データの作成を行なう。これは、先頭のデータの開始時刻と、最も後ろのデータの終了時刻をbegin time及びend timeに入れて、図7に示すような構造化データを作れば良い。本データは、1画面あたりのデータ数が一定数以上になるレベルのみ用いれば良い。例えば1画面が600ドットであるとすると、上記の平均周期を持つデータは、図8に示す表の個数分だけ1画面内に表現できる。ここで、しきい値を100と設定すると、レベル14以上で使用する。データがマージされるのがレベル16であるため、実質的には14と15でこのデータを使用すれば良い。
【0047】
以上説明したように、本実施形態によれば、各時系列データの平均周期を検出し、検出した平均周期、並びに時系列データの入力が開始された時刻および最後に入力された時刻を含む単一データを時間粒度毎に作成し、いずれかの時間粒度が指定されグラフを描画する旨の要求があったときに、指定された時間粒度に対応する前記単一データを用いて画面にグラフを描画するので、平均周期が偏りがちな時系列データのグラフ描画を、高速に行なうことが可能となる。
【符号の説明】
【0048】
1 データ処理スクリプト
3 グラフ作成部
5 データ検出部
7 データベース
9 データ取得部
11 登録データカウント部
15 テーブル特定部
17 まとまり検出部
19 平均周期検出部
21 データ作成部
23 データ登録部
25 しきい値保持部


図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12