(57)【特許請求の範囲】
【請求項１】
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する生成部を含む変異情報処理装置。
【請求項２】
前記生成部は、前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する請求項１記載の変異情報処理装置。
【請求項３】
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する請求項１又は請求項２記載の変異情報処理装置。
【請求項４】
前記生成部は、前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する請求項１又は請求項２記載の変異情報処理装置。
【請求項５】
前記生成部によって生成された個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計する第１集計部と、
前記生成部によって生成された前記テーブルに基づき、前記第１集計部による個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する第２集計部と、
を更に含む請求項２記載の変異情報処理装置。
【請求項６】
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第２集計部は、個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、(ｒ−１)＝ｎ×(ｓ−１)を満たす前記第２変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する請求項５記載の変異情報処理装置。
【請求項７】
前記生成部は、前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第２集計部は、個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、同一の前記第２変異位置に対応する格納領域が前記変異格納データ中で前記第１方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第１方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第２変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する請求項５記載の変異情報処理装置。
【請求項８】
コンピュータが、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数が固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行する変異情報処理方法。
【請求項９】
コンピュータに、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行させるための変異情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は変異情報処理装置、変異情報処理方法及び変異情報処理プログラムに関する。
【背景技術】
【０００２】
遺伝情報(ＤＮＡの塩基配列)には、個体差を生じさせる部分、すなわち個体によって遺伝情報が相違する部分(これを変異位置という)が数千万箇所存在しており、このうちの一部の変異位置は遺伝情報(変異パターン)が特定の疾患の罹患と相関が有る可能性がある。このため、対象とする疾患に罹患している個体群と、罹患していない個体群と、で変異パターンの出現頻度に有意差があるか否かを個々の変異位置毎に検定することで、前記疾患の罹患と相関が有る変異位置及びその変異パターンを分析する研究が進められている。
【０００３】
これに関連して、個々の変異位置毎に複数の個体の変異パターンを格納したＶＣＦ(Variant Call Format)ファイルから、データベースの個々のカラムに、１つの個体の各変異位置毎の変異パターンを、関連する注釈と共に格納する技術が提案されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Umadevi Paila、Brad A.Chapman、Rory Kirchner、Aaron R.Quinlan、"GEMINI: Integrative Exploration of Genetic Variation and Genome Annotations"、[online]、[平成２８年２月１日検索]、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｊｏｕｒｎａｌｓ．ｐｌｏｓ．ｏｒｇ／ｐｌｏｓｃｏｍｐｂｉｏｌ／ａｒｔｉｃｌｅ？ＩＤ＝１０．１３７１／ｊｏｕｒｎａｌ．ｐｃｂｉ．１００３１５３＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特定の疾患の罹患と相関が有る変異位置を分析するためには、個々の変異位置における変異パターン毎の出現数を複数の個体に亘って集計する集計処理を行う必要がある。この集計処理は、例えば上記技術のデータベースを利用する場合、１つのカラムから情報を取得し、取得した情報に基づき変異位置毎に対応する変異パターンの計数値をインクリメントする処理を、全カラム(処理対象の全個体)について繰り返すことで実現できる。
【０００６】
しかしながら、遺伝情報中の個々の変異位置における変異パターンの長さは、大多数の個体で一定であるものの、一部の個体では、例えば、変異パターンが標準的な長さよりも長かったり、逆に変異パターンが無い(長さ0)等のように不定である。このため、個体毎に各変異位置の変異パターンを並べた変異パターンの配列(データベースの１つのカラムから取得される情報)についても、一例として図２４に示すように、個々の変異位置の変異パターンを表す情報の長さが、個体によって相違することになる。なお、図２４は、個体０の変異パターンの配列と個体１の変異パターンの配列とで、変異位置１の変異パターンを表す情報の長さが相違している場合を示している。
【０００７】
従って、個体毎の変異パターンの配列を用いて集計処理を行う場合、個体毎(個々の配列毎)かつ個々の変異位置毎に変異パターンの長さを判別する必要があり、処理対象とする個体数にも依存するものの集計処理に膨大な時間が掛かる。
【０００８】
また、個体毎の変異パターンの配列を、個々の変異位置毎に、変異パターンを表す情報の長さが揃うように変換する(変異パターンを表す情報を、個々の変異位置毎に、最長の変異パターンを格納可能な長さにする)前処理を行うことも考えられる。一例として図２５には、個体０の変異パターンの配列における変異位置１の変異パターンを表す情報の長さを、個体１の変異パターンの配列における変異位置１の変異パターンを表す情報の長さに揃えた場合を示している。しかし、この前処理についても、個々の変異位置毎に最長の変異パターンの長さを求め、求めた最長の変異パターンの長さに応じて全個体の変異パターンの配列を変換する必要があるので、膨大な処理時間が掛かる。
【０００９】
一つの側面では、本発明は、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する処理の高速化を実現することが目的である。
【課題を解決するための手段】
【００１０】
一つの実施態様では、遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個体毎の変異格納データを生成する。変異格納データの生成は、個々の変異位置のうち、処理対象の複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置と、種類数ｒが種類数ｓを超える第２変異位置と、で以下のように処理を切り替える。すなわち、第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納する。第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域を、前記第２変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。
【発明の効果】
【００１１】
一つの側面として、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する処理の高速化を実現できる、という効果を有する。
【図面の簡単な説明】
【００１２】
【図１】変異情報分析支援システムの概略ブロック図である。
【図２】変異情報ＤＢに記憶されている個体別の変異情報の一例を示す概略図である。
【図３】変異情報抽出装置による処理の概要を示すイメージ図である。
【図４】変異情報処理装置に入力される変異情報の一例としてのＶＣＦファイルの一部を示す概略図である。
【図５】集計結果処理装置による処理の概要を示すイメージ図である。
【図６】特異性が無い変異位置及び特異性が有る変異位置における変異パターンの分布の一例を示す概念図である。
【図７】変異情報処理装置として機能するコンピュータの概略ブロック図である。
【図８】変異格納データ生成処理を示すフローチャートである。
【図９】第１実施形態に係る生成処理を示すフローチャートである。
【図１０】変異格納データのフォーマットを示す概略図である。
【図１１】変異マスタテーブルの一例を示す図表である。
【図１２】変異パターンを表すコードの一例を示す概略図である。
【図１３】第１実施形態におけるコードの一例を示す概略図である。
【図１４】第１実施形態における変異パターンのパターン番号とコードとの対応関係の一例を示す図表である。
【図１５】集計処理を示すフローチャートである。
【図１６】第１実施形態に係る最終集計処理を示すフローチャートである。
【図１７】一時集計テーブルによる一時集計の概要を示すイメージ図である。
【図１８】第１実施形態における最終集計テーブルによる最終集計の概要を示すイメージ図である。
【図１９】第２実施形態に係る生成処理を示すフローチャートである。
【図２０】第２実施形態におけるコードの一例を示す概略図である。
【図２１】第２実施形態における変異パターンのパターン番号とコードとの対応関係の一例を示す図表である。
【図２２】第２実施形態に係る最終集計処理を示すフローチャートである。
【図２３】第２実施形態における最終集計テーブルによる最終集計の概要を示すイメージ図である。
【図２４】従来技術を利用した場合の課題を説明するための概略図である。
【図２５】従来技術を利用した場合の課題を説明するための概略図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
【００１４】
〔第１実施形態〕
図１には変異情報分析支援システム１０が示されている。変異情報分析支援システム１０は、開示の技術に係る変異情報処理装置の一例としての変異情報処理装置１２、変異情報抽出装置１４及び集計結果処理装置１６を含んでいる。
【００１５】
変異情報抽出装置１４は、変異情報ＤＢ(Data Base)３２を記憶する第２記憶部３０及び個体情報ＤＢ３６を記憶する第３記憶部３４を含んでいる。変異情報ＤＢ３２には、個体別の変異情報が、個体ＩＤ(IDentifier)と各々対応付けられ、多数の個体について登録されている。個体別の変異情報は、一例として図２に示すように、個体の遺伝情報から各変異位置の変異パターンを抽出して順に並べた情報である。なお、個体別の変異情報に代えて個体別の遺伝情報全体をＤＢに記憶させておいてもよい。
【００１６】
個体情報ＤＢ３６には、変異情報ＤＢ３２に個体別の変異情報が登録されている多数の個体について、個体別の属性情報が登録されている。個体別の属性情報は、少なくとも、個体ＩＤと、個体が罹患している疾患の有無及び罹患している疾患が有る場合はその疾患を表す情報と、を含む。また、個体の性別、年齢、身長、体重、生活習慣(例えば喫煙習慣の有無等)等の情報を更に含んでいてもよい。
【００１７】
変異情報の分析を行う場合、変異情報抽出装置１４には、変異情報の抽出条件として、少なくとも、分析対象の疾患を指定する情報が入力される。また、性別や年齢等の抽出条件が追加される場合もある。図３に示すように、変異情報抽出装置１４は、抽出条件が入力されると、変異情報ＤＢ３２と個体情報ＤＢ３６とを照合し、入力された抽出条件に合致する個体群の個体別の変異情報を変異情報ＤＢ３２から各々読み出す。ここで個体別の変異情報を読み出す個体群は、少なくとも分析対象の疾患に罹患している個体の集合であり、以下では「罹患者群」という。そして、変異情報抽出装置１４は、読み出した個体別の変異情報を所定の形式へ編集し、罹患者群の変異情報４０Ａとして変異情報処理装置１２へ出力する。
【００１８】
また、変異情報抽出装置１４は、入力された抽出条件に合致しない個体群、或いは疾患を除く一部の抽出条件にのみ合致する個体群の個体別の変異情報を変異情報ＤＢ３２から各々読み出す。ここで個体別の変異情報を読み出した個体群は、少なくとも分析対象の疾患に罹患していない個体の集合であり、以下では「非罹患者群」という。そして、変異情報抽出装置１４は、読み出した個体別の変異情報を所定の形式へ編集し、非罹患者群の変異情報４０Ｂとして出力する。
【００１９】
なお、上記の所定の形式の一例としてはＶＣＦ(Variant Call Format)が挙げられる。図４に示すように、ＶＣＦファイル４８は、個々の変異位置毎に、処理対象の全個体(本実施形態では罹患者群又は非罹患者群の全個体)の変異パターンを順に並べた形式の情報を含んでいる。ＶＣＦは変異情報の形式として一般的な形式であり、以下では、変異情報抽出装置１４が、罹患者群の変異情報４０Ａ及び非罹患者群の変異情報４０ＢとしてＶＣＦファイル４８を出力する態様を説明する。但し、変異情報処理装置１２に入力される変異情報の形式はＶＣＦに限られるものではなく、他の形式であってもよい。
【００２０】
図１に示すように、変異情報処理装置１２は、生成部１８、第１集計部２０、第２集計部２２、変異格納データ１００及び変異マスタテーブル２８を記憶する第１記憶部２４を含んでいる。生成部１８、第１集計部２０及び第２集計部２２は、変異情報抽出装置１４から入力された罹患者群の変異情報４０Ａ及び非罹患者群の変異情報４０Ｂを各々処理対象として、以下の処理を行う。
【００２１】
生成部１８は、変異情報抽出装置１４より入力された変異情報から、固定ビット長の格納領域を複数含む変異格納データ１００を個体毎に生成し、生成した個体毎の変異格納データ１００を第１記憶部２４に記憶させる。本実施形態では、個々の格納領域のビット長を２ビットとしており、格納領域に格納可能なコードの種類数ｓ＝４である((00)B,(01)B,(10)B,(11)B,の何れか、但し(ｘ)Bはｘをバイナリで表すことを意味する)。
【００２２】
生成部１８は、個々の変異位置のうち、処理対象の全個体での変異パターンの種類数ｒがコードの種類数ｓ＝４以下の第１変異位置と、コードの種類数ｓ＝４を超える第２変異位置と、で以下のように処理を切り替えて変異格納データを生成する。すなわち、第１変異位置については、個々の変異位置に対応する格納領域の配列中の前記第１変異位置に対応する格納領域に、第１変異位置の変異パターンに対応するコードを格納する。第２変異位置については、前記配列中の第２変異位置に対応する格納領域、及び、前記配列の後に追加した第２変異位置に対応する格納領域を、第２変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に第２変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。また、生成部１８は、変異格納データ１００の生成と並行して変異マスタテーブル２８を生成し、生成した変異マスタテーブル２８を第１記憶部２４に記憶させる。
【００２３】
第１集計部２０は、生成部１８によって生成された個体毎の変異格納データ１００を第１記憶部２４から読み出し、変異格納データ１００中の個々の格納領域に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する。第１集計部２０による集計結果は一時集計テーブル(後述)に記憶される。
【００２４】
第２集計部２２は、第１記憶部２４に記憶された変異マスタテーブル２８に基づき、第１集計部２０による個々の格納領域毎の集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する。第２集計部２２による集計結果は最終集計テーブル(後述)に記憶される。第２集計部２２は、最終集計テーブルに記憶させた集計結果を集計結果処理装置１６へ出力する。
【００２５】
前述のように、変異情報処理装置１２は、罹患者群の変異情報４０Ａ及び非罹患者群の変異情報４０Ｂを各々処理対象として処理を行う。このため、変異情報処理装置１２は、例として図５に示すように、罹患者群の変異位置毎の集計結果４２Ａ及び非罹患者群の変異位置毎の集計結果４２Ｂを各々出力し、これらの集計結果４２Ａ,４２Ｂが集計結果処理装置１６に各々入力される。
【００２６】
集計結果処理装置１６は、入力された集計結果４２Ａ,４２Ｂに基づき、罹患者群と非罹患者群とで各変異パターンの出現頻度(変異パターン毎の出現数の分布)に有意差があるか否かを、カイ自乗検定等の統計手法により個々の変異位置毎に検定する。一例として図６に「特異性ない変異分布の例」として示すように、罹患者群と非罹患者群とで変異パターン毎の出現数の分布が類似している変異位置については、有意差が無い、すなわち分析対象の疾患の罹患と相関が無いと判断できる。一方、一例として図６に「特異性ある変異分布の例」として示すように、罹患者群と非罹患者群とで変異パターン毎の出現数の分布が非類似の変異位置については、有意差が有るので、分析対象の疾患の罹患と相関が有る可能性がある。
【００２７】
集計結果処理装置１６は、変異パターン毎の出現数の分布の有意差が大きい順に変異位置を順位付けし、有意差の降順に所定数の変異位置の情報を出力する。分析者は、集計結果処理装置１６から出力された情報に基づいて、分析対象の疾患の罹患と相関が有る変異位置及びその変異パターンを分析する。
【００２８】
また、第１実施形態において、変異情報処理装置１２は、図７に示すコンピュータ５０で実現される。コンピュータ５０は、ＣＰＵ５２、メモリ５４、不揮発性の記憶部５６、入力部５８、表示部６０、記録媒体６４に対するデータの読み出しおよび書き込みを行う読出書込装置(Ｒ／Ｗ)６２、及び、通信部６６を含む。ＣＰＵ５２、メモリ５４、記憶部５６、入力部５８、表示部６０、Ｒ／Ｗ６２及び通信部６６は、バス６８を介して互いに接続されている。変異情報処理装置１２は、通信部６６に接続されたネットワークを経由して変異情報抽出装置１４及び集計結果処理装置１６と通信可能とされている。
【００２９】
記憶部５６はＨＤＤ(Hard Disk Drive)、ＳＳＤ(Solid State Drive)、フラッシュメモリ等によって実現される。記憶部５６には、コンピュータ５０を変異情報処理装置１２として機能させるための変異情報処理プログラム７０が記憶されている。ＣＰＵ５２は、変異情報処理プログラム７０を記憶部５６から読み出してメモリ５４に展開し、変異情報処理プログラム７０に含まれる各プロセスを順次実行する。変異情報処理プログラム７０は、生成プロセス７２、第１集計プロセス７４及び第２集計プロセス７６を含む。
【００３０】
ＣＰＵ５２は、生成プロセス７２を実行することで、図１に示す生成部１８として動作する。また、ＣＰＵ５２は、第１集計プロセス７４を実行することで、図１に示す第１集計部２０として動作する。また、ＣＰＵ５２は、第２集計プロセス７６を実行することで、図１に示す第２集計部２２として動作する。これにより、変異情報処理プログラム７０を実行したコンピュータ５０が変異情報処理装置１２として機能することになる。変異情報処理プログラム７０は開示の技術に係る入力支援プログラムの一例である。
【００３１】
また、記憶部５６には変異格納データ記憶領域８０、変異マスタテーブル記憶領域８２、一時集計テーブル記憶領域８４及び最終集計テーブル記憶領域８６が設けられている。変異格納データ記憶領域８０には変異格納データ１００が記憶され、変異マスタテーブル記憶領域８２には変異マスタテーブル２８が記憶される。これにより、記憶部５６は図１に示す第１記憶部２４として機能する。
【００３２】
なお、変異情報処理装置１２は、例えば半導体集積回路、より詳しくはＡＳＩＣ（Application Specific Integrated Circuit）等で実現することも可能である。
【００３３】
次に第１実施形態の作用を説明する。なお、以下では変異位置の総数をＮ、処理対象の個体の総数をＭとする。まず、生成部１８によって実行される変異格納データ生成処理の説明に先立ち、この変異格納データ生成処理によって生成される変異格納データのフォーマットを説明する。
【００３４】
生成部１８は、詳細を後述する変異格納データ生成処理を実行することで、変異情報抽出装置１４より入力された変異情報(詳しくは、図４に示すＶＣＦファイル４８)から、図１０に示すフォーマットの変異格納データ１００を個体毎に生成する。図１０に示すように、変異格納データ１００は各々２ビットの格納領域１０２を複数含んでいる。変異格納データ１００の先頭からＮ個(変異格納データ１００内の位置＝０〜Ｎ−１)の格納領域１０２の配列は、変異位置０〜Ｎ−１のうち互いに異なる変異位置の変異パターンに対応するコードを格納するための標準格納領域１０２Ａの配列である。
【００３５】
２ビットの格納領域１０２に格納可能なコードの種類数ｓ＝４である((00)B,(01)B,(10)B,(11)B,の何れか)。格納領域１０２を２ビットとしている理由は、遺伝情報に含まれるＮ個の変異位置のうちの大多数(例えば90%以上)の変異位置では出現する変異パターンの種類数ｒ＝３であり、ｒ＝３であれば変異パターンを２ビットのコードで表せるためである。なお、変異パターンの種類数ｒ＝３の場合の変異パターンの一例は、A/A,A/C/,C/Cの３パターンである。
【００３６】
また、変異格納データ１００の先頭からＮ番目以降の格納領域(位置＝Ｎ以降の格納領域) １０２は、変異パターンの種類数ｒ＞４の変異位置について、変異パターンに対応するコードを格納するための追加格納領域１０２Ｂである。図１０は、追加格納領域１０２Ｂとして、変異位置２に対応する追加格納領域１０２Ｂのみ示しているが、追加格納領域１０２Ｂは、変異パターンの種類数ｒ＞４の変異位置に対し、種類数ｒの値に応じた数の格納領域１０２が各々追加される。変異パターンの種類数ｒ＞４の変異位置については、１個の標準格納領域１０２Ａと種類数ｒの値に応じた数の追加格納領域１０２Ｂを用いることで、５種類以上の変異パターンを表すコードを格納することができる。
【００３７】
次に図８を参照し、上記のフォーマットの変異格納データ１００を生成する変異格納データ生成処理を説明する。変異格納データ生成処理のステップ１５０において、生成部１８は、変異位置を識別するための変数ｉ及び個体を識別するための変数ｊに０を各々設定し、変異格納データ１００に含まれる格納領域１０２の総数を記憶するための変数ｋにＮ−１を初期設定する。また、ステップ１５２において、生成部１８は、記憶部５６の変異マスタテーブル記憶領域８２をクリアすることで、変異マスタテーブル２８を空の状態にする。
【００３８】
ステップ１５４において、生成部１８は、変異マスタテーブル２８に変異位置ｉの情報を記憶するための領域を追加する。図１１に示すように、変異マスタテーブル２８は、個々の変異位置毎に、対応する全ての格納領域１０２の位置、及び、変異パターンとパターン番号との対応関係を表す情報(変異パターンリスト)が登録される。ステップ１５４では、図１１における１行分の情報を記憶するための領域を追加し、追加した領域に、変異位置ｉに対応する領域であることを表すラベルを付す。
【００３９】
次のステップ１５６において、生成部１８は、情報の一時記憶のためにメモリ５４に設けたバッファ領域をクリアする。ステップ１５８において、生成部１８は、変異位置ｉの変異情報４０(ＶＣＦファイル４８)を取得する。例えば、変異情報抽出装置１４から変異情報４０が予め入力され、入力された変異情報４０を記憶部５６に記憶していた場合、変異位置ｉの変異情報４０は記憶部５６から読み出すことで取得できる。また、変異情報４０を記憶部５６に予め記憶しておくことなく、変異位置ｉの変異情報４０を変異情報抽出装置１４に要求することで取得してもよい。
【００４０】
ステップ１６０において、生成部１８は、ステップ１５８で取得した変異位置ｉの変異情報から個体ｊの変異位置ｉの変異パターンを抽出する。ステップ１６２において、生成部１８は、ステップ１６０で抽出した個体ｊの変異位置ｉの変異パターンがバッファ領域に記憶済か否か判定する。ステップ１６２の判定が否定された場合はステップ１６４へ移行し、ステップ１６４において、生成部１８は、ステップ１６０で抽出した個体ｊの変異位置ｉの変異パターンをバッファ領域に記憶し、ステップ１６６へ移行する。また、ステップ１６０で抽出した個体ｊの変異位置ｉの変異パターンがバッファ領域を既に記憶している場合は、ステップ１６２の判定が肯定され、ステップ１６４をスキップしてステップ１６６へ移行する。
【００４１】
ステップ１６６において、生成部１８は、変数ｊが、処理対象の個体の総数Ｍから１を減算した値に達したか否か判定する。ステップ１６６の判定が否定された場合はステップ１６８へ移行し、ステップ１６８において、生成部１８は、変数ｊを１だけインクリメントし、ステップ１６０に戻る。これにより、ステップ１６６の判定が肯定される迄、ステップ１６０〜１６８が繰り返され、処理対象の個体に出現した変異位置ｉの全ての変異パターンがバッファ領域に記憶される。
【００４２】
ステップ１６６の判定が肯定されるとステップ１７０へ移行する。ステップ１７０において、生成部１８は、変数ｊに０を設定する。またステップ１７２において、生成部１８は、バッファ領域に記憶している変異パターンの個数を計数することで、変異位置ｉにおける変異パターンの種類数ｒを計数する。
【００４３】
次のステップ１７４において、生成部１８は、ステップ１７２で計数した変異位置ｉにおける変異パターンの種類数ｒが４以下か否か判定する。変異位置ｉにおける変異パターンの種類数ｒが４以下の場合、変異位置ｉについては変異パターンを２ビットのコードで表すことができるので、追加格納領域１０２Ｂは不要である。このため、ステップ１７４の判定が肯定された場合はステップ１７６へ移行し、ステップ１７６において、生成部１８は、変異位置ｉに対応する格納領域１０２の位置として変数ｉをバッファ領域に記憶し、ステップ１８８へ移行する。この場合、例えば図１１に「変異０」又は「変異１」として示すように、格納領域１０２の位置として標準格納領域１０２Ａの位置(図１１の例では「０」又は「１」)のみがバッファ領域に記憶される。
【００４４】
一方、変異位置ｉにおける変異パターンの種類数ｒが４を超えている場合は、ステップ１７４の判定が否定されてステップ１７８へ移行する。変異位置ｉにおける変異パターンの種類数ｒが４を超えている場合、変異パターンを表すためのコードが２ビットよりも長くなるので、追加格納領域１０２Ｂが必要になる。このため、ステップ１７８〜１８２では必要な追加格納領域の数ｔを求める。
【００４５】
すなわち、ステップ１７８において、生成部１８は、変異位置ｉにおける変異パターンの種類数ｒから１を減算した値が３の倍数か否か判定する(次の(１)式も参照)。
ｒ−１＝３ｎ  …(１)  (但し、ｎは自然数)
ステップ１７８の判定が否定された場合はステップ１８０へ移行し、ステップ１８０において、生成部１８は、次の(２)式に従って追加格納領域の数ｔを演算し、ステップ１８４へ移行する。
ｔ←ＩＮＴ((ｒ−１)／３)  …(２)
但し、ＩＮＴ(ａ)は値ａの小数点以下を切り捨てて整数化することを表す。
【００４６】
また、ステップ１７８の判定が肯定された場合はステップ１８２へ移行し、ステップ１８２において、生成部１８は、次の(３)式に従って追加格納領域の数ｔを演算し、ステップ１８４へ移行する。
ｔ←(ｒ−１)／３)−１  …(３)
上記のステップ１７８〜１８２により、変異位置ｉにおける変異パターンの種類数ｒが、４＜ｒ≦７であれば追加格納領域の数ｔ＝１、８＜ｒ≦１０であれば追加格納領域の数ｔ＝２となり、種類数ｒが３増える度に追加格納領域の数ｔが１ずつ増加する。
【００４７】
次のステップ１８４において、生成部１８は、変異位置ｉに対応する格納領域１０２の位置として、変数ｉ、変数ｋ＋1〜変数ｋ＋ｔをバッファ領域に各々記憶する。この場合、例えば図１１に「変異２」として示すように、格納領域１０２の位置として、標準格納領域１０２Ａの位置(図１１の例では「２」)及び追加格納領域１０２Ｂの位置(図１１の例では「ｋ」)がバッファ領域に各々記憶される。
【００４８】
なお、図１１に示す「変異２」は追加格納領域の数ｔ＝１の場合を示しているが、前述のように種類数ｒが３増える度に追加格納領域の数ｔが１ずつ増加するので、バッファ領域に記憶される追加格納領域１０２Ｂの位置の数も１ずつ増加する。ステップ１８６において、生成部１８は、変数ｋを、変数ｋに追加格納領域の数ｔを加算した値を設定し、ステップ１８８へ移行する。
【００４９】
ステップ１８８において、生成部１８は、バッファ領域に記憶している個々の変異パターンに、０〜ｒ−１のうちの互いに異なるパターン番号を割り当て、割り当てたパターン番号を変異パターンと対応付けてバッファ領域に記憶する。次のステップ１９０において、生成部１８は、バッファ領域に記憶している情報を、変異マスタテーブル２８のうち先のステップ１５４で追加した領域に、変異位置ｉの情報として登録する。これにより、図１１における１行分の情報が変異マスタテーブル２８に登録される。
【００５０】
次のステップ１９２において、生成部１８は、変数ｉが変異位置の総数Ｎから１を減算した値に達したか否か判定する。ステップ１９２の判定が否定された場合はステップ１９４へ移行し、ステップ１９４において、生成部１８は、変数ｉを１だけインクリメントしてステップ１５４に戻る。これにより、ステップ１９２の判定が肯定される迄、ステップ１５４〜１９４が繰り返され、全ての変異位置について、対応する格納領域１０２の位置と変異パターンリストとが変異マスタテーブル２８に各々登録される。
【００５１】
ステップ１９２の判定が肯定されるとステップ１９６へ移行し、ステップ１９６において、生成部１８は生成処理を行う。以下、図９を参照して生成処理を説明する。
【００５２】
図９に示す生成処理が開始される時点では、変数ｋにはＮ個の変異位置に割り当てた格納領域１０２の総数が設定されている。これに基づき、ステップ２００において、生成部１８は、変異格納データ記憶領域８０に、２ビットの格納領域１０２をｋ個含む変異格納データ１００の記憶領域をＭ個(処理対象の全個体分)確保する。次のステップ２０２において、生成部１８は、変数ｉ及び変数ｊに各々０を設定する。
【００５３】
ステップ２０４において、生成部１８は、変異マスタテーブル２８から変異位置ｉの情報(対応する格納領域１０２の位置及び変異パターンリスト)を取得する。次のステップ２０６において、生成部１８は、ステップ２０４で取得した変異位置ｉの情報に基づいて、変異位置ｉにおける変異パターンの種類数ｒ及び変異位置ｉに対応する格納領域の数ｕを計数する。また、生成部１８は、ステップ２０４で取得した変異位置ｉの情報に基づき、変異位置ｉに対応する個々の格納領域１０２の位置を、格納領域１０２の位置の昇順に並べた格納領域位置の配列Ｙ(ｙ0,…,ｙu-1)を生成する。
【００５４】
ステップ２０８において、生成部１８は、前述のステップ１５８と同様に、変異位置ｉの変異情報４０を取得する。ステップ２１０において、生成部１８は、ステップ２０８で取得した変異位置ｉの変異情報４０から個体ｊの変異位置ｉの変異パターンを抽出する。ステップ２１２において、生成部１８は、ステップ２１０で抽出した変異パターンを、ステップ２０４で取得した変異位置ｉの変異パターンリストと照合することで、個体ｊの変異位置ｉの変異パターンに対応するパターン番号ｐを判別する。
【００５５】
ステップ２１４において、生成部１８は、変数ｖに０を設定する。ステップ２１６において、生成部１８は、変数ｖが、パターン番号ｐを３で除算して整数化した値に一致するか否か判定する(次の(４)式も参照)。
ｖ＝ＩＮＴ(ｐ／３)  …(４)
【００５６】
ステップ２１６の判定が肯定された場合はステップ２２０へ移行する。ステップ２２０において、生成部１８は、個体ｊの変異格納データ１００のうち位置ｙvの格納領域１０２に、パターン番号ｐを３で除算した余りを表すバイナリ値を格納する(次の(５)式も参照)。
Pattern[ｊ][ｙv]←ＭＯＤ(ｐ／３)  …(５)
但し、Pattern[ｊ][ｙv]は、個体ｊの変異格納データ１００の位置ｙvの格納領域１０２を表し、ＭＯＤ(ａ／ｂ)はａ／ｂの余りを表す。
【００５７】
また、ステップ２１６の判定が否定された場合はステップ２２２へ移行する。ステップ２２２において、生成部１８は、個体ｊの変異格納データ１００のうち位置ｙvの格納領域１０２にコード(11)Bを格納する。なお、(11)Bは特定コードの一例である。ステップ２２０又はステップ２２２を行うとステップ２２４へ移行する。
【００５８】
ステップ２２４において、生成部１８は、変数ｖが、変異位置ｉに対応する格納領域の数ｕから１を減算した値に達したか否か判定する。ステップ２２４の判定が否定された場合はステップ２２６へ移行し、ステップ２２６において、生成部１８は、変数ｖを１だけインクリメントし、ステップ２１６へ戻る。これにより、ステップ２２４の判定が肯定される迄、ステップ２１６〜２２６が繰り返され、個体ｊの変異格納データ１００のうち変異位置ｉに対応する格納領域１０２に、パターン番号ｐに対応するコードが各々格納される。そして、ステップ２２４の判定が肯定されると、ステップ２２８へ移行する。
【００５９】
ステップ２２８において、生成部１８は、変数ｊが、処理対象の個体の総数Ｍから１を減算した値に達したか否か判定する。ステップ２２８の判定が否定された場合はステップ２３０へ移行し、ステップ２３０において、生成部１８は、変数ｊを１だけインクリメントし、ステップ２１０に戻る。これにより、ステップ２２８の判定が肯定される迄、ステップ２１０〜２３０が繰り返される。従って、ステップ２０８で取得した変異情報４０から各個体の変異位置ｉの変異パターンを順に抽出し、各個体の変異格納データ１００中の変異位置ｉに対応する格納領域１０２に、変異パターンに対応するコードを格納する処理が繰り返される。
【００６０】
ステップ２２８の判定が肯定されるとステップ２３２へ移行し、ステップ２３２において、生成部１８は、変数ｊに０を設定する。次のステップ２３４において、生成部１８は、変数ｉが変異位置の総数Ｎから１を減算した値に達したか否か判定する。ステップ２３４の判定が否定された場合はステップ２３６へ移行し、ステップ２３６において、生成部１８は、変数ｉを１だけインクリメントしてステップ２０４に戻る。これにより、ステップ２３４の判定が肯定される迄、ステップ２０４〜２３６が繰り返され、全ての変異位置について、各個体の変異格納データ１００へのコードの格納が行われる。そして、ステップ２３４の判定が肯定されると、生成処理(図８の変異データ格納処理)を終了する。
【００６１】
上述した生成処理(図９)による処理結果の一例として、変異格納データ１００のうち、１つの変異位置に対応する格納領域１０２に格納されるコードの一例を図１３,１４に示す。図１３,１４は、同一の変異位置に対応する格納領域の数ｕ＝３で、前記変異位置における変異パターンの種類数ｒ＝１０の場合に、パターン番号ｐ(＝０〜９)と各格納領域１０２に格納されるバイナリ値との関係を示している。なお、図１３等に示す"NULL"は、本明細書ではコード(11)Bを意味している。
【００６２】
例えば、１つの変異位置に２ビットの格納領域１０２を３個割り当てた場合、個々の格納領域１０２を一体(６ビットの格納領域)とみなせば、３個の格納領域１０２に格納可能なコードの種類数ｓはｓ＝２6＝６４で、６４種類の変異パターンを表すことができる。図１２には、上記の具体例として、３個の格納領域１０２を一体とみなしてコード(001101)Bを格納した例を示す。しかしながら、この場合、１個の格納領域１０２に格納されているコードが或る値のときに、このコードが表している可能性がある変異パターンの種類数＝６４／４＝１６種類あり、このコードのみでは３個の格納領域１０２が表す変異パターンは判別できない。このため、集計処理において、３個の格納領域１０２からコードを各々取得し、取得した３個のコードを変異マスタテーブル２８に類する情報と照合して変異パターンを判別し、判別した変異パターンに集計値をインクリメントする処理を繰り返する必要がある。
【００６３】
これに対し、本実施形態では、同一の変異位置に対応する格納領域１０２のうち、変異パターン(パターン番号ｐ)に対応する何れか１つの格納領域１０２(特定格納領域)に変異パターンに対応するコードを格納し、残りの格納領域１０２にコード(11)Bを格納する。例えば図１３,１４の例では、パターン番号ｐ＝０〜２の場合は、「領域０」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域１」及び「領域２」にコード(11)Bを格納する。また、パターン番号ｐ＝３〜５の場合は、「領域１」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域０」及び「領域２」にコード(11)Bを格納する。また、パターン番号ｐ＝６〜８の場合は、「領域２」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域０」及び「領域１」にコード(11)Bを格納する。そして、パターン番号ｐ＝９の場合は、例外的に、「領域０」〜「領域２」にコード(11)Bを各々格納する。
【００６４】
図１３,１４の例において、３個の格納領域１０２によって表すことができる変異パターンの種類数は１０種類である。しかし、図１３,１４の例において、各格納領域１０２に格納されるパターン番号ｐに対応するコード((00)B〜(10)Bの何れか)は、それぞれ１つの変異パターン(パターン番号ｐ)に対応している。また、図１３,１４の例において、パターン番号ｐ＝９以外の場合に特定格納領域以外の格納領域に格納する(11)Bは、自領域がパターン番号ｐに対応するコードを格納していないことを意味している。
【００６５】
このため、後述する集計処理において、まず、変異格納データ１００中の個々の各格納領域１０２に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する一時集計処理を行うことができる。この一時集計処理は、処理対象の個体の総数Ｍと格納領域の数ｋの積を繰り返し回数とする繰り返し処理となるが、一時集計処理の間は変異マスタテーブル２８を参照する必要が無いので、高速に処理できる。そして、一時集計処理の後で、一時集計処理による集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する最終集計処理を行うことができる。
【００６６】
なお、図１３,１４に示す例は、格納領域の数ｕ＝３で、変異パターンの種類数ｒ＝１０の例であり、種類数ｒ≠３ｎ＋１であれば、同一の変異位置に対応する全ての格納領域１０２にコード(11)Bを各々格納するパターン番号ｐは生じない。また、種類数ｒ≦４の場合は格納領域の数ｕ＝１になり、対応する１個の格納領域１０２、すなわち標準格納領域１０２Ａを特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納する。
【００６７】
次に、図１５を参照し、上述した変異データ格納処理が終了した後に実行される集計処理を説明する。記憶部５６の一時集計テーブル記憶領域８４には、図１７に一例を示す一時集計テーブル１０４が記憶されている。一時集計テーブル１０４は、変異格納データ１００中の個々の格納領域毎、かつコード毎((00)B〜(11)Bの各々)の集計値を記憶している。
【００６８】
集計処理のステップ２５０において、第１集計部２０は、一時集計テーブル１０４に記憶されている全ての集計値を０にすることで、一時集計テーブル１０４を０クリアする。なお、以下では、一時集計テーブル１０４に記憶されている位置ｗの格納領域１０２のコードｘの集計値をTempAgg[ｗ][ｘ]と表記する。
【００６９】
ステップ２５２において、第１集計部２０は、変数ｊ及び格納領域１０２の位置を識別するための変数ｗに各々０を設定する。ステップ２５４において、第１集計部２０は、記憶部５６の変異格納データ記憶領域８０から個体ｊの変異格納データ１００を取得する。ステップ２５６において、第１集計部２０は、ステップ２５４で取得した個体ｊの変異格納データ１００から、位置ｗの格納領域１０２に格納されたコードｘを抽出する。
【００７０】
次のステップ２５８において、第１集計部２０は、一時集計テーブル１０４に記憶されている集計値のうち、位置ｗの格納領域のコードｘの集計値TempAgg[ｗ][ｘ]を１だけインクリメントする。ステップ２６０において、第１集計部２０は、変数ｗが、格納領域の数ｋから１を減算した値に達したか否か判定する。ステップ２６０の判定が否定された場合はステップ２６２へ移行し、ステップ２６２において、第１集計部２０は、変数ｗを１だけインクリメントしてステップ２５６に戻る。これにより、ステップ２６０の判定が肯定される迄、ステップ２５４〜２６２が繰り返され、例として図１７にも示すように、個体ｊの変異格納データ１００の各格納領域に格納されたコードに応じて、各格納領域毎かつコード毎の出現数の集計が行われる。
【００７１】
ステップ２６０の判定が肯定されるとステップ２６４へ移行し、ステップ２６４において、第１集計部２０は変数ｗに０を設定する。次のステップ２６６において、第１集計部２０は、変数ｊが処理対象の個体の総数Ｍから１を減算した値に達したか否か判定する。ステップ２６６の判定が否定された場合はステップ２６８へ移行し、ステップ２６８において、第１集計部２０は、変数ｊを１だけインクリメントし、ステップ２５４に戻る。
【００７２】
これにより、ステップ２６６の判定が肯定される迄、ステップ２５４〜２６８が繰り返される。従って、各個体の変異格納データ１００を順に取得し、取得した変異格納データ１００の各格納領域に格納されたコードに応じて、各格納領域毎かつコード毎の出現数を集計する一時集計処理が行われる。上記の一時集計処理は、変異マスタテーブル２８を参照することなく集計を行っているので、処理速度の高速化が実現される。
【００７３】
ステップ２６６の判定が肯定されるとステップ２７０へ移行し、ステップ２７０において、第２集計部２２は最終集計処理を行う。以下、図１６を参照して最終集計処理を説明する。  記憶部５６の最終集計テーブル記憶領域８６には、図１８に一例を示す最終集計テーブル１０６が記憶されている。最終集計テーブル１０６は、変異位置毎かつパターン番号ｐ毎(変異パターン毎)の集計値を記憶する記憶領域が設けられている。
【００７４】
最終集計処理のステップ３００において、第２集計部２２は、最終集計テーブル１０６に記憶されている全ての集計値を０にすることで、最終集計テーブル１０６を０クリアする。なお、以下では、最終集計テーブル１０６に記憶されている変異位置ｉのｚ番目の変異パターンの集計値をFinAgg[ｉ][ｚ]と表記する。
【００７５】
ステップ３０２において、第２集計部２２は、変数ｉ、変異パターン(パターン番号ｐ)を識別するための変数ｚ、変数ｖ及び変数ｘに各々０を設定する。また、ステップ３０４において、第２集計部２２は、変異マスタテーブル２８から変異位置ｉの情報(対応する格納領域１０２の位置及び変異パターンリスト)を取得する。
【００７６】
ステップ３０６において、第２集計部２２は、ステップ２０４で取得した変異位置ｉの情報に基づいて、変異位置ｉにおける変異パターンの種類数ｒ及び変異位置ｉに対応する格納領域の数ｕを計数する。また、第２集計部２２は、ステップ３０４で取得した変異位置ｉの情報に基づき、変異位置ｉに対応する個々の格納領域１０２の位置を、格納領域１０２の位置の昇順に並べた格納領域位置の配列Ｙ(ｙ0,…,ｙu-1)を生成する。
【００７７】
ステップ３０８において、第２集計部２２は、一時集計テーブル１０４の位置ｙvの格納領域のコードｘの集計値TempAgg[ｙv][ｘ]を、最終集計テーブル１０６の変異位置ｉのｚ番目の変異パターンの集計値FinAgg[ｉ][ｚ]の記憶領域にコピーする。ステップ３１０において、第２集計部２２は、変数ｘの値が２に達したか否か判定する。ステップ３１０の判定が否定された場合はステップ３１２へ移行し、ステップ３１２において、第２集計部２２は、変数ｘを１だけインクリメントすると共に、変数ｚも１だけインクリメントし、ステップ３０８に戻る。これにより、ステップ３１０の判定が肯定される迄、ステップ３０８〜３１２が繰り返される。
【００７８】
また、ステップ３１０の判定が肯定されるとステップ３１４へ移行し、ステップ３１４において、第２集計部２２は、変数ｘに０を設定する。次のステップ３１６において、第２集計部２２は、変異位置ｉに対応する格納領域の数ｕから１を減算した値に達したか否か判定する。ステップ３１６の判定が否定された場合はステップ３１８へ移行し、ステップ３１８において、第２集計部２２は、変数ｖを１だけインクリメントし、ステップ３０８へ戻る。これにより、ステップ３１６の判定が肯定される迄、ステップ３０８〜３１８が繰り返される。
【００７９】
上述したステップ３０８〜３１８により、個々の変異位置毎に、一時集計テーブル１０４に記憶された変異位置ｉに対応する各格納領域の集計値群が、最終集計テーブル１０６の変異位置ｉの集計値の記憶領域群に各々コピーされる。一例として図１８には、「コピー」と表記して示すように、一時集計テーブル１０４に記憶された変異位置２に対応する位置＝２,ｋ−１の格納領域の集計値群が、最終集計テーブル１０６の変異位置２の集計値の記憶領域群に各々コピーされた例を示している。
【００８０】
また、ステップ３１６の判定が肯定されるとステップ３２０へ移行し、ステップ３２０において、第２集計部２２は、変異パターンの種類数ｒから１を減算した値が、格納領域の数ｕに３を乗じた値と一致するか否か判定する(次の(６)式も参照)。
ｒ−１＝３ｕ  …(６)
ステップ３２０の肯定が否定された場合、変異位置ｉのｒ種類の変異パターンのうちの最終変異パターン(パターン番号ｐ＝ｒ−１の変異パターン)は、変異位置ｉに対応する全ての格納領域１０２にコード(11)Bを格納する変異パターンである。この変異パターンの一例は、図１４に示す例でパターン番号ｐ＝９に対応する変異パターンである。ステップ３２０の判定が肯定された場合はステップ３２２へ移行する。
【００８１】
例えば、図１４に示す例では、パターン番号ｐ＝３〜９のときに格納領域０にコード(11)Bを格納し、パターン番号ｐ＝０〜２，６〜９のときに格納領域１にコード(11)Bを格納し、パターン番号ｐ＝０〜５のときに格納領域２にコード(11)Bを格納する。このため、変異位置ｉの最終変異パターンの集計値については、演算により求める必要がある。
【００８２】
ステップ３２２において、第２集計部２２は、最終集計テーブル１０６の変異位置ｉのｚ＋１番目の変異パターンの集計値FinAgg[ｉ][ｚ＋1]に、個体の総数Ｍから集計値FinAgg[ｉ][0]〜集計値FinAgg[ｉ][ｒ−１]の合計を減算した値を設定する。なお、個体の総数Ｍは、一時集計テーブル１０４に記憶されている、変異位置ｉに対応する位置ｙv(変数ｖは０〜ｕ−１のうちの何れか１つ)の格納領域のコードｘ＝(00)B〜(11)Bの集計値TempAgg[ｙv][0]〜集計値TempAgg[ｙv][3]の合計値に等しい。従って、ステップ３２２の処理は次の(６)式又は(７)式で表すことができる。
【００８３】
【数１】
0006648549.tif 000002
【００８４】
一例として図１８には、「算出」と表記して示すように、個体の総数Ｍ(=30)から、最終変異パターン(パターン番号ｐ＝６)以外のパターン番号ｐ＝０〜５の変異パターンの集計値の合計(=22)を減算することで、最終変異パターンの集計値を算出している。
【００８５】
一方、ステップ３２０の判定が否定された場合は、変異位置ｉに出現したｒ種類の変異パターンの中に、変異位置ｉに対応する全ての格納領域１０２にコード(11)Bを格納するコードが割り当てられた変異パターンは存在していない。このため、ステップ３２０の判定が否定された場合は、ステップ３２２をスキップしてステップ３２４へ移行する。上述した処理により、変異位置ｉにおける各変異パターン(パターン番号ｐ)毎の出現数が、最終集計テーブル１０６に記憶されることになる。
【００８６】
ステップ３２４において、第２集計部２２は、変異マスタテーブル２８から取得した変異位置ｉの変異パターンリストに基づいて、最終集計テーブルに記憶されている変異位置ｉのパターン番号を対応する変異パターンに変換する。次のステップ３２６において、第２集計部２２は、変数ｚ及び変数ｖに各々０を設定する。
【００８７】
次のステップ３２８において、第２集計部２２は、変数ｉが変異位置の総数Ｎから１を減算した値に達したか否か判定する。ステップ３２８の判定が否定された場合はステップ３３０へ移行し、ステップ３３０において、第２集計部２２は、変数ｉを１だけインクリメントしてステップ３０４に戻る。これにより、ステップ３２８の判定が肯定される迄、ステップ３０４〜３３０が繰り返され、全ての変異位置について、上述した最終集計処理が行われる。
【００８８】
なお、上記の最終集計処理は、変異マスタテーブル２８にアクセスする処理を含んでいる。しかし、処理対象の全個体に対する格納領域１０２単位での集計は、先に説明した一時集計処理(図１５のステップ２５０〜２６８)で完了しているので、最終集計処理における処理の繰り返し回数＝Ｎ(変異位置の数)となる。このため、処理の繰り返し回数＝Ｍ(処理対象の個体の総数)×ｋ(格納領域の数)になる一時集計処理と比較して、変異マスタテーブル２８にアクセスする処理を含んでいることが処理時間に与える影響は非常に小さくなる。
【００８９】
ステップ３２８の判定が肯定された場合は、最終集計処理を終了して集計処理(図１５)のステップ２７２へ移行する。ステップ２７２において、第２集計部２２は、上述した処理によって得られた最終集計結果(個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計した結果)を集計結果処理装置１６へ出力し、集計処理を終了する。
【００９０】
〔第２実施形態〕
【００９１】
次に開示の技術の第２実施形態について説明する。なお、第２実施形態は第１実施形態と同一の構成であるので、各部分に同一の符号を付して構成の説明を省略し、以下、第２実施形態の作用について、第１実施形態と異なる部分を説明する。
【００９２】
まず、図１９を参照し、第２実施形態に係る生成処理を説明する。第２実施形態に係る生成処理は、第１実施形態で説明した生成処理(図９)と比較して、ステップ２１６に代えてステップ２１７の判定を行っている点で相違している。ステップ２１７において、生成部１８は、変数ｖがパターン番号ｐを３で除算した値以上か否か判定する。ステップ２１７の判定が肯定された場合はステップ２２０へ移行し、ステップ２１７の判定が否定された場合はステップ２２２へ移行する。
【００９３】
第２実施形態に係る生成処理による処理結果の一例として、変異格納データ１００のうち、１つの変異位置に対応する格納領域１０２に格納されるコードの一例を図２０,２１に示す。図２０,２１は、同一の変異位置に対応する格納領域の数ｕ＝３で、前記変異位置における変異パターンの種類数ｒ＝１０の場合に、パターン番号ｐ(＝０〜９)と各格納領域１０２に格納されるバイナリ値との関係を示している。
【００９４】
第２実施形態では、同一の変異位置に対応する格納領域１０２のうち、変異パターン(パターン番号ｐ)に対応する何れか１つの格納領域１０２(特定格納領域)に変異パターンに対応するコードを格納する。また、残りの格納領域１０２のうち、特定格納領域が変異格納データ１００中の前方に存在する格納領域１０２(第１格納領域)には、特定格納領域と同じコードを格納する。また、残りの格納領域１０２のうち、特定格納領域が変異格納データ１００中の後方に存在する格納領域１０２(第２格納領域)には(11)Bを格納する。
【００９５】
例えば図２０,２１の例では、パターン番号ｐ＝０〜２の場合は、「領域０」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域１」及び「領域２」にも特定格納領域と同じコードを格納する。また、パターン番号ｐ＝３〜５の場合は、「領域１」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域０」にコード(11)Bを格納し、「領域２」に特定格納領域と同じコードを格納する。また、パターン番号ｐ＝６〜８の場合は、「領域２」を特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域０」及び「領域１」にコード(11)Bを格納する。そして、パターン番号ｐ＝９の場合は、例外的に、「領域０」〜「領域２」にコード(11)Bを各々格納する。
【００９６】
図２０,２１の例において、３個の格納領域１０２に格納されるパターン番号ｐに対応するコード((00)B〜(10)Bの何れか)は、それぞれ１つの変異パターン(パターン番号ｐ)に対応している。また、図２０,２１の例において、パターン番号ｐ＝９以外の場合に特定格納領域以外の格納領域に格納する(11)Bは、自領域がパターン番号ｐに対応するコードを格納していないことを意味している。
【００９７】
このため、第１実施形態と同様に、集計処理において、まず、変異格納データ１００中の個々の各格納領域１０２に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する一時集計処理を行うことができる。この一時集計処理は、処理対象の個体の総数Ｍと格納領域の数ｋの積を繰り返し回数とする繰り返し処理となるが、一時集計処理の間は変異マスタテーブル２８を参照する必要が無いので、高速に処理できる。そして、一時集計処理の後で、一時集計処理による集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する最終集計処理を行うことができる。
【００９８】
なお、図２０,２１に示す例は、格納領域の数ｕ＝３で、変異パターンの種類数ｒ＝１０の例であり、種類数ｒ≠３ｎ＋１であれば、同一の変異位置に対応する全ての格納領域１０２にコード(11)Bを各々格納するパターン番号ｐは生じない。また、種類数ｒ≦４の場合は格納領域の数ｕ＝１になり、対応する１個の格納領域１０２、すなわち標準格納領域１０２Ａを特定格納領域とし、パターン番号ｐに対応するコード((00)B〜(10)Bの何れか)を格納する。
【００９９】
次に図２２を参照し、第２実施形態に係る最終集計処理を説明する。第２実施形態に係る最終集計処理は、第１実施形態で説明した最終集計処理(図１６)と比較して、ステップ３０８に代えてステップ３０９の判定を行っている点で相違している。ステップ３０９において、第２集計部２２は、一時集計テーブル１０４の位置ｙvの格納領域１０２のコードｘの集計値TempAgg[ｙv][ｘ]から集計値TempAgg[ｙv-1][ｘ]を減算した値を演算する。そして、第２集計部２２は、演算した値を、最終集計テーブル１０６の変異位置ｉのｚ番目の変異パターンの集計値FinAgg[ｉ][ｚ]に設定する。但し、ｖ＝０(ｖ−１＝−１)の場合、集計値TempAgg[ｙv-1][ｘ]＝０である。
【０１００】
上記のステップ３０９を含むステップ３０８〜３１８により、個々の変異位置毎に、一時集計テーブル１０４における変異位置ｉに対応する先頭の格納領域の集計値が、最終集計テーブル１０６の変異位置ｉの集計値の記憶領域にコピーされる。一例として図２３には、「コピー」と表記して示すように、一時集計テーブル１０４における変異位置２に対応する位置＝２の格納領域の集計値が、最終集計テーブル１０６の変異位置２のパターン０〜２の集計値の記憶領域に各々コピーされた例を示している。
【０１０１】
また、個々の変異位置毎に、一時集計テーブル１０４における変異位置ｉに対応する２番目以降の格納領域の集計値は、同一の変異位置の１つ前の格納領域の集計値が減算された上で、最終集計テーブル１０６の変異位置ｉの集計値の記憶領域に設定される。図２３に示す例では、「算出」と表記したように、一時集計テーブル１０４における変異位置２に対応する位置＝ｋ−１の格納領域のコード(00)B〜(10)Bの集計値は、同一の変異位置の１つ前の格納領域である位置＝ｋ−１の格納領域の集計値が減算される。そして、減算後の値が、最終集計テーブル１０６の変異位置２のパターン３〜５の集計値の記憶領域に各々設定されている。
【０１０２】
また、第２実施形態に係る最終集計処理は、第１実施形態で説明した最終集計処理と比較して、ステップ３２２に代えてステップ３２３の処理を行っている点でも相違している。ステップ３２３において、第２集計部２２は、最終集計テーブル１０６の変異位置ｉのパターン番号ｐ＝ｚ＋１の集計値FinAgg[ｉ][ｚ＋1]に、一時集計テーブル１０４の位置ｙvの格納領域１０２のコード３(＝(11)B)の集計値TempAgg[ｙv][3]を設定する。図２３に示す例では、「コピー」と表記したように、一時集計テーブル１０４における変異位置２に対応する位置＝ｋ−１の格納領域のコード(11)Bの集計値が、最終集計テーブル１０６の変異位置２のパターン６の集計値の記憶領域にコピーされている。
【０１０３】
上述したステップ３０９,３２３を含む、第２実施形態に係る最終集計処理によっても、各変異位置毎に、各変異パターン(パターン番号ｐ)毎の出現数が、最終集計テーブル１０６に記憶されることになる。
【０１０４】
このように、上記の各実施形態において、生成部１８は、遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報４０から、個体毎の変異格納データ１００を生成する。変異格納データ１００の生成は、個々の変異位置のうち、処理対象の複数の個体での変異パターンの種類数ｒが４以下の第１変異位置と、種類数ｒが４を超える第２変異位置と、で以下のように処理を切り替える。すなわち、第１変異位置については、個々の変異位置に対応する標準格納領域１０２Ａの配列中の第１変異位置に対応する標準格納領域１０２Ａに、第１変異位置の変異パターンに対応するコードを格納する。第２変異位置については、第２変異位置に対応する標準格納領域１０２Ａ及び標準格納領域１０２Ａの配列の後に追加した第２変異位置に対応する追加格納領域１０２Ｂを、第２変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に第２変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。これにより、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する集計処理の高速化を実現することができる。
【０１０５】
また、上記の各実施形態において、生成部１８は、変異情報４０から個々の変異位置毎に処理対象の複数の個体に出現した全種類の変異パターンを抽出する。また生成部１８は、変異パターンの抽出結果から、個々の変異位置毎のパターン番号と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の変異格納データ１００中の位置を登録した変異マスタテーブル２８を生成する。そして生成部１８は、生成した変異マスタテーブル２８に基づいて個体毎の変異格納データ１００を生成する。これにより、変異マスタテーブル２８の生成と変異格納データ１００の生成を並列に行う場合と比較して、新たな変異パターンの出現に伴って生成済みの変異格納データ１００を書き替える処理を行う必要がなくなり、変異格納データ１００の生成も高速化できる。
【０１０６】
また、第１実施形態において、生成部１８は、所定のコードとしてコード(11)Bを用いる。また生成部１８は、第２変異位置がｒ−１＝３ｎを満たし、かつ第２変異位置における変異パターンがｒ種類の変異パターンのうちの最終変異パターンの場合には、第２変異位置に対応する全ての格納領域にコード(11)Bを格納する。これにより、ｋ個の２ビットの格納領域で表すことができる変異パターンの種類数ｒ＝３ｋ＋１とすることができ、変異格納データの長さを短くすることができる。
【０１０７】
また、上記の各実施形態において、第１集計部２０は、個体毎の変異格納データ１００から、変異格納データ１００中の個々の格納領域に格納されたコードの出現数を、複数の個体に亘って個々の格納領域毎かつコード毎に集計する。また、第２集計部２２は、変異マスタテーブル２８に基づき、第１集計部２０による個々の格納領域毎の集計結果から、個々の変異位置毎に、複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する。集計処理を、第１集計部２０による上記の集計処理と、第２集計部２２による上記の集計処理に分けることで、第１集計部２０による集計処理の途中で、変異マスタテーブル２８にアクセスする必要が無くなり、集計処理を高速化できる。
【０１０８】
また、第１実施形態において、第２集計部２２は、個々の格納領域毎の集計結果のうち、同一の第２変異位置に対応する複数の格納領域の集計結果を第２変異位置の集計結果に統合する。また第２集計部２２は、ｒ−１＝３ｎを満たす第２変異位置については、最終変異パターンの出現数として、処理対象の個体の数から最終変異パターン以外の変異パターンの出現数の合計値を減算した値を設定する。そして第２集計部２２は、変異マスタテーブル２８に登録されたパターン番号とコードとの対応関係に基づいて、第１集計部２０による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する。これにより、変異格納データ１００の個々の格納領域毎かつコード毎の出現数の集計結果から、個々の変異位置毎かつ変異パターン毎の変異パターンの出現数が得られる。
【０１０９】
また、上記の第２実施形態において、生成部１８は、第２変異位置に対応する格納領域のうち、特定格納領域が変異格納データ１００中で前方に存在する第１格納領域には、特定格納領域と同じコードを格納する。また生成部１８は、特定格納領域が変異格納データ１００中で後方に存在する第２格納領域にはコード(11)Bを格納する。また生成部１８は、第２変異位置がｒ−１＝３ｎを満たし、かつ第２変異位置における変異パターンがｒ−１番目の最終変異パターンの場合には、第２変異位置に対応する全ての格納領域にコード(11)Bを格納する。これにより、第１実施形態と同様に、ｋ個の２ビットの格納領域で表すことができる変異パターンの種類数ｒ＝３ｋ＋１とすることができ、変異格納データの長さを短くすることができる。
【０１１０】
また、上記の第２実施形態において、第２集計部２２は、個々の格納領域毎の集計結果のうち、同一の第２変異位置に対応する複数の格納領域の集計結果を第２変異位置の集計結果に統合する。また第２集計部２２は、同一の第２変異位置に対応する格納領域が変異格納データ１００中で前方に存在する格納領域について集計されたコードの出現数のうち、コード(11)B以外のコードの出現数を、次のように更新する。すなわち、コード(11)B以外のコードの出現数から、変異格納データ１００中で前方に存在する直近の格納領域について集計されたコード(11)B以外のコードの出現数を各々減算する。そして第２集計部２２は、変異マスタテーブル２８に登録されたパターン番号とコードとの対応関係に基づいて、第１集計部２０による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する。これにより、変異格納データ１００の個々の格納領域毎かつコード毎の出現数の集計結果から、個々の変異位置毎かつ変異パターン毎の変異パターンの出現数が得られる。
【０１１１】
なお、変異パターン(パターン番号)とコードとの関係は図１４又は図２１に示す関係に限られるものではない。例えば、パターン番号ｐ＝０の場合に対応する全格納領域１０２に特定コードを設定する関係を適用してもよい。また、(11)B以外のコードを特定コードに割り当ててもよい。また、図２１に示す関係は、特定格納領域が変異格納データ１００中で前方に存在する第１格納領域に特定格納領域と同じコードを格納するが、特定格納領域が変異格納データ１００中で後方に存在する第２格納領域に特定格納領域と同じコードを格納してもよい。
【０１１２】
また、開示の技術は人間以外の生物にも適用可能である。上記では格納領域を２ビットとしていたが、格納領域の長さ(固定ビット長)は、開示の技術を適用する生物において、大多数の変異位置での変異パターンの種類数ｒに応じて適宜選択可能である。また、開示の技術を人間に適用する場合であっても、格納領域の長さ(固定ビット長)は２ビットに限られるものではなく、例えば３ビット等を採用してもよい。
【０１１３】
また、上記では、開示の技術に係る変異情報処理プログラムの一例である変異情報処理プログラム７０が記憶部５６に予め記憶（インストール）されている態様を説明した。しかし、開示の技術に係る変異情報処理プログラムは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、メモリカード等の記録媒体に記録されている形態で提供することも可能である。
【０１１４】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【０１１５】
以上の実施形態に関し、更に以下の付記を開示する。
【０１１６】
（付記１）
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する生成部を含む変異情報処理装置。
【０１１７】
（付記２）
前記生成部は、前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する付記１記載の変異情報処理装置。
【０１１８】
（付記３）
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する付記１又は付記２記載の変異情報処理装置。
【０１１９】
（付記４）
前記生成部は、前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する付記１又は付記２記載の変異情報処理装置。
【０１２０】
（付記５）
前記生成部によって生成された個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計する第１集計部と、
前記生成部によって生成された前記テーブルに基づき、前記第１集計部による個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する第２集計部と、
を更に含む付記２項記載の変異情報処理装置。
【０１２１】
（付記６）
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第２集計部は、個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、(ｒ−１)＝ｎ×(ｓ−１)を満たす前記第２変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記５記載の変異情報処理装置。
【０１２２】
（付記７）
前記生成部は、前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第２集計部は、個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、同一の前記第２変異位置に対応する格納領域が前記変異格納データ中で前記第１方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第１方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第２変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記５記載の変異情報処理装置。
【０１２３】
（付記８）
前記生成部は、(ｒ−１)≠ｎ×(ｓ−１)を満たす前記第２変異位置(但し、ｎは自然数)については、対応する格納領域を前記配列の後にＩＮＴ((ｒ−１)／(ｓ−１))個追加し(但し、ＩＮＴ(ｘ)はｘの小数点以下を切り捨てて整数化することを表す)、(ｒ−１)＝ｎ×(ｓ−１)を満たす前記第２変異位置については、対応する格納領域を前記配列の後に((ｒ−１)／(ｓ−１))−１個追加する付記１〜付記７の何れか１項記載の変異情報処理装置。
【０１２４】
（付記９）
前記固定ビット長は２ビットである付記１〜付記８の何れか１項記載の変異情報処理装置。
【０１２５】
（付記１０）
コンピュータが、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行する変異情報処理方法。
【０１２６】
（付記１１）
前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する付記１０記載の変異情報処理方法。
【０１２７】
（付記１２）
前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する付記１０又は付記１１記載の変異情報処理方法。
【０１２８】
（付記１３）
前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納する付記１０又は付記１１記載の変異情報処理方法。
【０１２９】
（付記１４）
生成した個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計し、
生成した前記テーブルに基づき、個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する付記１１記載の変異情報処理方法。
【０１３０】
（付記１５）
前記所定のコードとして予め設定された特定コードを用い、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、(ｒ−１)＝ｎ×(ｓ−１)を満たす前記第２変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記１４記載の変異情報処理方法。
【０１３１】
（付記１６）
前記第２変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第１方向に存在する第１格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第１方向と反対の第２方向に存在する第２格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第２変異位置が(ｒ−１)＝ｎ×(ｓ−１)を満たし、かつ前記第２変異位置における変異パターンがｒ種類の変異パターンのうちの特定変異パターンの場合には、前記第２変異位置に対応する全ての格納領域に前記特定コードを格納し、
個々の格納領域毎の集計結果のうち、同一の前記第２変異位置に対応する複数の格納領域の集計結果を前記第２変異位置の集計結果に統合すると共に、同一の前記第２変異位置に対応する格納領域が前記変異格納データ中で前記第１方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第１方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第２変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第１集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記１４記載の変異情報処理方法。
【０１３２】
（付記１７）
(ｒ−１)≠ｎ×(ｓ−１)を満たす前記第２変異位置(但し、ｎは自然数)については、対応する格納領域を前記配列の後にＩＮＴ((ｒ−１)／(ｓ−１))個追加し(但し、ＩＮＴ(ｘ)はｘの小数点以下を切り捨てて整数化することを表す)、(ｒ−１)＝ｎ×(ｓ−１)を満たす前記第２変異位置については、対応する格納領域を前記配列の後に((ｒ−１)／(ｓ−１))−１個追加する付記１０〜付記１６の何れか１項記載の変異情報処理方法。
【０１３３】
（付記１８）
前記固定ビット長は２ビットである付記１０〜付記１７の何れか１項記載の変異情報処理方法。
【０１３４】
（付記１９）
コンピュータに、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数ｒが固定ビット長の格納領域に格納可能なコードの種類数ｓ以下の第１変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第１変異位置に対応する格納領域に、前記第１変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数ｒが前記コードの種類数ｓを超える第２変異位置については、前記配列中の前記第２変異位置に対応する格納領域、及び、前記配列の後に追加した前記第２変異位置に対応する前記固定ビット長の格納領域のうち、前記第２変異位置の変異パターンに対応する特定格納領域に前記第２変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行させるための変異情報処理プログラム。
【符号の説明】
【０１３５】
１０…変異情報分析支援システム、１２…変異情報処理装置、１４…変異情報抽出装置、１６…集計結果処理装置、１８…生成部、２０…第１集計部、２２…第２集計部、２４…第１記憶部、２８…変異マスタテーブル、３２…変異情報ＤＢ、３６…個体情報ＤＢ、４０…変異情報、５０…コンピュータ、５２…ＣＰＵ、５４…メモリ、５６…記憶部、７０…変異情報処理プログラム、１００…変異格納データ、１０２…格納領域、１０４…一時集計テーブル、１０６…最終集計テーブル
【図１】
0006648549.tif 000003
【図２】
0006648549.tif 000004
【図３】
0006648549.tif 000005
【図４】
0006648549.tif 000006
【図５】
0006648549.tif 000007
【図６】
0006648549.tif 000008
【図７】
0006648549.tif 000009
【図８】
0006648549.tif 000010
【図９】
0006648549.tif 000011
【図１０】
0006648549.tif 000012
【図１１】
0006648549.tif 000013
【図１２】
0006648549.tif 000014
【図１３】
0006648549.tif 000015
【図１４】
0006648549.tif 000016
【図１５】
0006648549.tif 000017
【図１６】
0006648549.tif 000018
【図１７】
0006648549.tif 000019
【図１８】
0006648549.tif 000020
【図１９】
0006648549.tif 000021
【図２０】
0006648549.tif 000022
【図２１】
0006648549.tif 000023
【図２２】
0006648549.tif 000024
【図２３】
0006648549.tif 000025
【図２４】
0006648549.tif 000026
【図２５】
0006648549.tif 000027