JP6648549B2 - 変異情報処理装置、方法及びプログラム - Google Patents

変異情報処理装置、方法及びプログラム Download PDF

Info

Publication number
JP6648549B2
JP6648549B2 JP2016030268A JP2016030268A JP6648549B2 JP 6648549 B2 JP6648549 B2 JP 6648549B2 JP 2016030268 A JP2016030268 A JP 2016030268A JP 2016030268 A JP2016030268 A JP 2016030268A JP 6648549 B2 JP6648549 B2 JP 6648549B2
Authority
JP
Japan
Prior art keywords
mutation
code
pattern
storage area
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016030268A
Other languages
English (en)
Other versions
JP2017146928A (ja
Inventor
善史 宇治橋
善史 宇治橋
河場 基行
基行 河場
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016030268A priority Critical patent/JP6648549B2/ja
Priority to US15/428,440 priority patent/US10783983B2/en
Publication of JP2017146928A publication Critical patent/JP2017146928A/ja
Application granted granted Critical
Publication of JP6648549B2 publication Critical patent/JP6648549B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • G16B20/20Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics

Description

本発明は変異情報処理装置、変異情報処理方法及び変異情報処理プログラムに関する。
遺伝情報(DNAの塩基配列)には、個体差を生じさせる部分、すなわち個体によって遺伝情報が相違する部分(これを変異位置という)が数千万箇所存在しており、このうちの一部の変異位置は遺伝情報(変異パターン)が特定の疾患の罹患と相関が有る可能性がある。このため、対象とする疾患に罹患している個体群と、罹患していない個体群と、で変異パターンの出現頻度に有意差があるか否かを個々の変異位置毎に検定することで、前記疾患の罹患と相関が有る変異位置及びその変異パターンを分析する研究が進められている。
これに関連して、個々の変異位置毎に複数の個体の変異パターンを格納したVCF(Variant Call Format)ファイルから、データベースの個々のカラムに、1つの個体の各変異位置毎の変異パターンを、関連する注釈と共に格納する技術が提案されている。
Umadevi Paila、Brad A.Chapman、Rory Kirchner、Aaron R.Quinlan、"GEMINI: Integrative Exploration of Genetic Variation and Genome Annotations"、[online]、[平成28年2月1日検索]、インターネット<URL:http://journals.plos.org/ploscompbiol/article?ID=10.1371/journal.pcbi.1003153>
特定の疾患の罹患と相関が有る変異位置を分析するためには、個々の変異位置における変異パターン毎の出現数を複数の個体に亘って集計する集計処理を行う必要がある。この集計処理は、例えば上記技術のデータベースを利用する場合、1つのカラムから情報を取得し、取得した情報に基づき変異位置毎に対応する変異パターンの計数値をインクリメントする処理を、全カラム(処理対象の全個体)について繰り返すことで実現できる。
しかしながら、遺伝情報中の個々の変異位置における変異パターンの長さは、大多数の個体で一定であるものの、一部の個体では、例えば、変異パターンが標準的な長さよりも長かったり、逆に変異パターンが無い(長さ0)等のように不定である。このため、個体毎に各変異位置の変異パターンを並べた変異パターンの配列(データベースの1つのカラムから取得される情報)についても、一例として図24に示すように、個々の変異位置の変異パターンを表す情報の長さが、個体によって相違することになる。なお、図24は、個体0の変異パターンの配列と個体1の変異パターンの配列とで、変異位置1の変異パターンを表す情報の長さが相違している場合を示している。
従って、個体毎の変異パターンの配列を用いて集計処理を行う場合、個体毎(個々の配列毎)かつ個々の変異位置毎に変異パターンの長さを判別する必要があり、処理対象とする個体数にも依存するものの集計処理に膨大な時間が掛かる。
また、個体毎の変異パターンの配列を、個々の変異位置毎に、変異パターンを表す情報の長さが揃うように変換する(変異パターンを表す情報を、個々の変異位置毎に、最長の変異パターンを格納可能な長さにする)前処理を行うことも考えられる。一例として図25には、個体0の変異パターンの配列における変異位置1の変異パターンを表す情報の長さを、個体1の変異パターンの配列における変異位置1の変異パターンを表す情報の長さに揃えた場合を示している。しかし、この前処理についても、個々の変異位置毎に最長の変異パターンの長さを求め、求めた最長の変異パターンの長さに応じて全個体の変異パターンの配列を変換する必要があるので、膨大な処理時間が掛かる。
一つの側面では、本発明は、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する処理の高速化を実現することが目的である。
一つの実施態様では、遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個体毎の変異格納データを生成する。変異格納データの生成は、個々の変異位置のうち、処理対象の複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置と、種類数rが種類数sを超える第2変異位置と、で以下のように処理を切り替える。すなわち、第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納する。第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域を、前記第2変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。
一つの側面として、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する処理の高速化を実現できる、という効果を有する。
変異情報分析支援システムの概略ブロック図である。 変異情報DBに記憶されている個体別の変異情報の一例を示す概略図である。 変異情報抽出装置による処理の概要を示すイメージ図である。 変異情報処理装置に入力される変異情報の一例としてのVCFファイルの一部を示す概略図である。 集計結果処理装置による処理の概要を示すイメージ図である。 特異性が無い変異位置及び特異性が有る変異位置における変異パターンの分布の一例を示す概念図である。 変異情報処理装置として機能するコンピュータの概略ブロック図である。 変異格納データ生成処理を示すフローチャートである。 第1実施形態に係る生成処理を示すフローチャートである。 変異格納データのフォーマットを示す概略図である。 変異マスタテーブルの一例を示す図表である。 変異パターンを表すコードの一例を示す概略図である。 第1実施形態におけるコードの一例を示す概略図である。 第1実施形態における変異パターンのパターン番号とコードとの対応関係の一例を示す図表である。 集計処理を示すフローチャートである。 第1実施形態に係る最終集計処理を示すフローチャートである。 一時集計テーブルによる一時集計の概要を示すイメージ図である。 第1実施形態における最終集計テーブルによる最終集計の概要を示すイメージ図である。 第2実施形態に係る生成処理を示すフローチャートである。 第2実施形態におけるコードの一例を示す概略図である。 第2実施形態における変異パターンのパターン番号とコードとの対応関係の一例を示す図表である。 第2実施形態に係る最終集計処理を示すフローチャートである。 第2実施形態における最終集計テーブルによる最終集計の概要を示すイメージ図である。 従来技術を利用した場合の課題を説明するための概略図である。 従来技術を利用した場合の課題を説明するための概略図である。
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
〔第1実施形態〕
図1には変異情報分析支援システム10が示されている。変異情報分析支援システム10は、開示の技術に係る変異情報処理装置の一例としての変異情報処理装置12、変異情報抽出装置14及び集計結果処理装置16を含んでいる。
変異情報抽出装置14は、変異情報DB(Data Base)32を記憶する第2記憶部30及び個体情報DB36を記憶する第3記憶部34を含んでいる。変異情報DB32には、個体別の変異情報が、個体ID(IDentifier)と各々対応付けられ、多数の個体について登録されている。個体別の変異情報は、一例として図2に示すように、個体の遺伝情報から各変異位置の変異パターンを抽出して順に並べた情報である。なお、個体別の変異情報に代えて個体別の遺伝情報全体をDBに記憶させておいてもよい。
個体情報DB36には、変異情報DB32に個体別の変異情報が登録されている多数の個体について、個体別の属性情報が登録されている。個体別の属性情報は、少なくとも、個体IDと、個体が罹患している疾患の有無及び罹患している疾患が有る場合はその疾患を表す情報と、を含む。また、個体の性別、年齢、身長、体重、生活習慣(例えば喫煙習慣の有無等)等の情報を更に含んでいてもよい。
変異情報の分析を行う場合、変異情報抽出装置14には、変異情報の抽出条件として、少なくとも、分析対象の疾患を指定する情報が入力される。また、性別や年齢等の抽出条件が追加される場合もある。図3に示すように、変異情報抽出装置14は、抽出条件が入力されると、変異情報DB32と個体情報DB36とを照合し、入力された抽出条件に合致する個体群の個体別の変異情報を変異情報DB32から各々読み出す。ここで個体別の変異情報を読み出す個体群は、少なくとも分析対象の疾患に罹患している個体の集合であり、以下では「罹患者群」という。そして、変異情報抽出装置14は、読み出した個体別の変異情報を所定の形式へ編集し、罹患者群の変異情報40Aとして変異情報処理装置12へ出力する。
また、変異情報抽出装置14は、入力された抽出条件に合致しない個体群、或いは疾患を除く一部の抽出条件にのみ合致する個体群の個体別の変異情報を変異情報DB32から各々読み出す。ここで個体別の変異情報を読み出した個体群は、少なくとも分析対象の疾患に罹患していない個体の集合であり、以下では「非罹患者群」という。そして、変異情報抽出装置14は、読み出した個体別の変異情報を所定の形式へ編集し、非罹患者群の変異情報40Bとして出力する。
なお、上記の所定の形式の一例としてはVCF(Variant Call Format)が挙げられる。図4に示すように、VCFファイル48は、個々の変異位置毎に、処理対象の全個体(本実施形態では罹患者群又は非罹患者群の全個体)の変異パターンを順に並べた形式の情報を含んでいる。VCFは変異情報の形式として一般的な形式であり、以下では、変異情報抽出装置14が、罹患者群の変異情報40A及び非罹患者群の変異情報40BとしてVCFファイル48を出力する態様を説明する。但し、変異情報処理装置12に入力される変異情報の形式はVCFに限られるものではなく、他の形式であってもよい。
図1に示すように、変異情報処理装置12は、生成部18、第1集計部20、第2集計部22、変異格納データ100及び変異マスタテーブル28を記憶する第1記憶部24を含んでいる。生成部18、第1集計部20及び第2集計部22は、変異情報抽出装置14から入力された罹患者群の変異情報40A及び非罹患者群の変異情報40Bを各々処理対象として、以下の処理を行う。
生成部18は、変異情報抽出装置14より入力された変異情報から、固定ビット長の格納領域を複数含む変異格納データ100を個体毎に生成し、生成した個体毎の変異格納データ100を第1記憶部24に記憶させる。本実施形態では、個々の格納領域のビット長を2ビットとしており、格納領域に格納可能なコードの種類数s=4である((00)B,(01)B,(10)B,(11)B,の何れか、但し(x)Bはxをバイナリで表すことを意味する)。
生成部18は、個々の変異位置のうち、処理対象の全個体での変異パターンの種類数rがコードの種類数s=4以下の第1変異位置と、コードの種類数s=4を超える第2変異位置と、で以下のように処理を切り替えて変異格納データを生成する。すなわち、第1変異位置については、個々の変異位置に対応する格納領域の配列中の前記第1変異位置に対応する格納領域に、第1変異位置の変異パターンに対応するコードを格納する。第2変異位置については、前記配列中の第2変異位置に対応する格納領域、及び、前記配列の後に追加した第2変異位置に対応する格納領域を、第2変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に第2変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。また、生成部18は、変異格納データ100の生成と並行して変異マスタテーブル28を生成し、生成した変異マスタテーブル28を第1記憶部24に記憶させる。
第1集計部20は、生成部18によって生成された個体毎の変異格納データ100を第1記憶部24から読み出し、変異格納データ100中の個々の格納領域に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する。第1集計部20による集計結果は一時集計テーブル(後述)に記憶される。
第2集計部22は、第1記憶部24に記憶された変異マスタテーブル28に基づき、第1集計部20による個々の格納領域毎の集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する。第2集計部22による集計結果は最終集計テーブル(後述)に記憶される。第2集計部22は、最終集計テーブルに記憶させた集計結果を集計結果処理装置16へ出力する。
前述のように、変異情報処理装置12は、罹患者群の変異情報40A及び非罹患者群の変異情報40Bを各々処理対象として処理を行う。このため、変異情報処理装置12は、例として図5に示すように、罹患者群の変異位置毎の集計結果42A及び非罹患者群の変異位置毎の集計結果42Bを各々出力し、これらの集計結果42A,42Bが集計結果処理装置16に各々入力される。
集計結果処理装置16は、入力された集計結果42A,42Bに基づき、罹患者群と非罹患者群とで各変異パターンの出現頻度(変異パターン毎の出現数の分布)に有意差があるか否かを、カイ自乗検定等の統計手法により個々の変異位置毎に検定する。一例として図6に「特異性ない変異分布の例」として示すように、罹患者群と非罹患者群とで変異パターン毎の出現数の分布が類似している変異位置については、有意差が無い、すなわち分析対象の疾患の罹患と相関が無いと判断できる。一方、一例として図6に「特異性ある変異分布の例」として示すように、罹患者群と非罹患者群とで変異パターン毎の出現数の分布が非類似の変異位置については、有意差が有るので、分析対象の疾患の罹患と相関が有る可能性がある。
集計結果処理装置16は、変異パターン毎の出現数の分布の有意差が大きい順に変異位置を順位付けし、有意差の降順に所定数の変異位置の情報を出力する。分析者は、集計結果処理装置16から出力された情報に基づいて、分析対象の疾患の罹患と相関が有る変異位置及びその変異パターンを分析する。
また、第1実施形態において、変異情報処理装置12は、図7に示すコンピュータ50で実現される。コンピュータ50は、CPU52、メモリ54、不揮発性の記憶部56、入力部58、表示部60、記録媒体64に対するデータの読み出しおよび書き込みを行う読出書込装置(R/W)62、及び、通信部66を含む。CPU52、メモリ54、記憶部56、入力部58、表示部60、R/W62及び通信部66は、バス68を介して互いに接続されている。変異情報処理装置12は、通信部66に接続されたネットワークを経由して変異情報抽出装置14及び集計結果処理装置16と通信可能とされている。
記憶部56はHDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等によって実現される。記憶部56には、コンピュータ50を変異情報処理装置12として機能させるための変異情報処理プログラム70が記憶されている。CPU52は、変異情報処理プログラム70を記憶部56から読み出してメモリ54に展開し、変異情報処理プログラム70に含まれる各プロセスを順次実行する。変異情報処理プログラム70は、生成プロセス72、第1集計プロセス74及び第2集計プロセス76を含む。
CPU52は、生成プロセス72を実行することで、図1に示す生成部18として動作する。また、CPU52は、第1集計プロセス74を実行することで、図1に示す第1集計部20として動作する。また、CPU52は、第2集計プロセス76を実行することで、図1に示す第2集計部22として動作する。これにより、変異情報処理プログラム70を実行したコンピュータ50が変異情報処理装置12として機能することになる。変異情報処理プログラム70は開示の技術に係る入力支援プログラムの一例である。
また、記憶部56には変異格納データ記憶領域80、変異マスタテーブル記憶領域82、一時集計テーブル記憶領域84及び最終集計テーブル記憶領域86が設けられている。変異格納データ記憶領域80には変異格納データ100が記憶され、変異マスタテーブル記憶領域82には変異マスタテーブル28が記憶される。これにより、記憶部56は図1に示す第1記憶部24として機能する。
なお、変異情報処理装置12は、例えば半導体集積回路、より詳しくはASIC(Application Specific Integrated Circuit)等で実現することも可能である。
次に第1実施形態の作用を説明する。なお、以下では変異位置の総数をN、処理対象の個体の総数をMとする。まず、生成部18によって実行される変異格納データ生成処理の説明に先立ち、この変異格納データ生成処理によって生成される変異格納データのフォーマットを説明する。
生成部18は、詳細を後述する変異格納データ生成処理を実行することで、変異情報抽出装置14より入力された変異情報(詳しくは、図4に示すVCFファイル48)から、図10に示すフォーマットの変異格納データ100を個体毎に生成する。図10に示すように、変異格納データ100は各々2ビットの格納領域102を複数含んでいる。変異格納データ100の先頭からN個(変異格納データ100内の位置=0〜N−1)の格納領域102の配列は、変異位置0〜N−1のうち互いに異なる変異位置の変異パターンに対応するコードを格納するための標準格納領域102Aの配列である。
2ビットの格納領域102に格納可能なコードの種類数s=4である((00)B,(01)B,(10)B,(11)B,の何れか)。格納領域102を2ビットとしている理由は、遺伝情報に含まれるN個の変異位置のうちの大多数(例えば90%以上)の変異位置では出現する変異パターンの種類数r=3であり、r=3であれば変異パターンを2ビットのコードで表せるためである。なお、変異パターンの種類数r=3の場合の変異パターンの一例は、A/A,A/C/,C/Cの3パターンである。
また、変異格納データ100の先頭からN番目以降の格納領域(位置=N以降の格納領域) 102は、変異パターンの種類数r>4の変異位置について、変異パターンに対応するコードを格納するための追加格納領域102Bである。図10は、追加格納領域102Bとして、変異位置2に対応する追加格納領域102Bのみ示しているが、追加格納領域102Bは、変異パターンの種類数r>4の変異位置に対し、種類数rの値に応じた数の格納領域102が各々追加される。変異パターンの種類数r>4の変異位置については、1個の標準格納領域102Aと種類数rの値に応じた数の追加格納領域102Bを用いることで、5種類以上の変異パターンを表すコードを格納することができる。
次に図8を参照し、上記のフォーマットの変異格納データ100を生成する変異格納データ生成処理を説明する。変異格納データ生成処理のステップ150において、生成部18は、変異位置を識別するための変数i及び個体を識別するための変数jに0を各々設定し、変異格納データ100に含まれる格納領域102の総数を記憶するための変数kにN−1を初期設定する。また、ステップ152において、生成部18は、記憶部56の変異マスタテーブル記憶領域82をクリアすることで、変異マスタテーブル28を空の状態にする。
ステップ154において、生成部18は、変異マスタテーブル28に変異位置iの情報を記憶するための領域を追加する。図11に示すように、変異マスタテーブル28は、個々の変異位置毎に、対応する全ての格納領域102の位置、及び、変異パターンとパターン番号との対応関係を表す情報(変異パターンリスト)が登録される。ステップ154では、図11における1行分の情報を記憶するための領域を追加し、追加した領域に、変異位置iに対応する領域であることを表すラベルを付す。
次のステップ156において、生成部18は、情報の一時記憶のためにメモリ54に設けたバッファ領域をクリアする。ステップ158において、生成部18は、変異位置iの変異情報40(VCFファイル48)を取得する。例えば、変異情報抽出装置14から変異情報40が予め入力され、入力された変異情報40を記憶部56に記憶していた場合、変異位置iの変異情報40は記憶部56から読み出すことで取得できる。また、変異情報40を記憶部56に予め記憶しておくことなく、変異位置iの変異情報40を変異情報抽出装置14に要求することで取得してもよい。
ステップ160において、生成部18は、ステップ158で取得した変異位置iの変異情報から個体jの変異位置iの変異パターンを抽出する。ステップ162において、生成部18は、ステップ160で抽出した個体jの変異位置iの変異パターンがバッファ領域に記憶済か否か判定する。ステップ162の判定が否定された場合はステップ164へ移行し、ステップ164において、生成部18は、ステップ160で抽出した個体jの変異位置iの変異パターンをバッファ領域に記憶し、ステップ166へ移行する。また、ステップ160で抽出した個体jの変異位置iの変異パターンがバッファ領域を既に記憶している場合は、ステップ162の判定が肯定され、ステップ164をスキップしてステップ166へ移行する。
ステップ166において、生成部18は、変数jが、処理対象の個体の総数Mから1を減算した値に達したか否か判定する。ステップ166の判定が否定された場合はステップ168へ移行し、ステップ168において、生成部18は、変数jを1だけインクリメントし、ステップ160に戻る。これにより、ステップ166の判定が肯定される迄、ステップ160〜168が繰り返され、処理対象の個体に出現した変異位置iの全ての変異パターンがバッファ領域に記憶される。
ステップ166の判定が肯定されるとステップ170へ移行する。ステップ170において、生成部18は、変数jに0を設定する。またステップ172において、生成部18は、バッファ領域に記憶している変異パターンの個数を計数することで、変異位置iにおける変異パターンの種類数rを計数する。
次のステップ174において、生成部18は、ステップ172で計数した変異位置iにおける変異パターンの種類数rが4以下か否か判定する。変異位置iにおける変異パターンの種類数rが4以下の場合、変異位置iについては変異パターンを2ビットのコードで表すことができるので、追加格納領域102Bは不要である。このため、ステップ174の判定が肯定された場合はステップ176へ移行し、ステップ176において、生成部18は、変異位置iに対応する格納領域102の位置として変数iをバッファ領域に記憶し、ステップ188へ移行する。この場合、例えば図11に「変異0」又は「変異1」として示すように、格納領域102の位置として標準格納領域102Aの位置(図11の例では「0」又は「1」)のみがバッファ領域に記憶される。
一方、変異位置iにおける変異パターンの種類数rが4を超えている場合は、ステップ174の判定が否定されてステップ178へ移行する。変異位置iにおける変異パターンの種類数rが4を超えている場合、変異パターンを表すためのコードが2ビットよりも長くなるので、追加格納領域102Bが必要になる。このため、ステップ178〜182では必要な追加格納領域の数tを求める。
すなわち、ステップ178において、生成部18は、変異位置iにおける変異パターンの種類数rから1を減算した値が3の倍数か否か判定する(次の(1)式も参照)。
r−1=3n …(1) (但し、nは自然数)
ステップ178の判定が否定された場合はステップ180へ移行し、ステップ180において、生成部18は、次の(2)式に従って追加格納領域の数tを演算し、ステップ184へ移行する。
t←INT((r−1)/3) …(2)
但し、INT(a)は値aの小数点以下を切り捨てて整数化することを表す。
また、ステップ178の判定が肯定された場合はステップ182へ移行し、ステップ182において、生成部18は、次の(3)式に従って追加格納領域の数tを演算し、ステップ184へ移行する。
t←(r−1)/3)−1 …(3)
上記のステップ178〜182により、変異位置iにおける変異パターンの種類数rが、4<r≦7であれば追加格納領域の数t=1、8<r≦10であれば追加格納領域の数t=2となり、種類数rが3増える度に追加格納領域の数tが1ずつ増加する。
次のステップ184において、生成部18は、変異位置iに対応する格納領域102の位置として、変数i、変数k+1〜変数k+tをバッファ領域に各々記憶する。この場合、例えば図11に「変異2」として示すように、格納領域102の位置として、標準格納領域102Aの位置(図11の例では「2」)及び追加格納領域102Bの位置(図11の例では「k」)がバッファ領域に各々記憶される。
なお、図11に示す「変異2」は追加格納領域の数t=1の場合を示しているが、前述のように種類数rが3増える度に追加格納領域の数tが1ずつ増加するので、バッファ領域に記憶される追加格納領域102Bの位置の数も1ずつ増加する。ステップ186において、生成部18は、変数kを、変数kに追加格納領域の数tを加算した値を設定し、ステップ188へ移行する。
ステップ188において、生成部18は、バッファ領域に記憶している個々の変異パターンに、0〜r−1のうちの互いに異なるパターン番号を割り当て、割り当てたパターン番号を変異パターンと対応付けてバッファ領域に記憶する。次のステップ190において、生成部18は、バッファ領域に記憶している情報を、変異マスタテーブル28のうち先のステップ154で追加した領域に、変異位置iの情報として登録する。これにより、図11における1行分の情報が変異マスタテーブル28に登録される。
次のステップ192において、生成部18は、変数iが変異位置の総数Nから1を減算した値に達したか否か判定する。ステップ192の判定が否定された場合はステップ194へ移行し、ステップ194において、生成部18は、変数iを1だけインクリメントしてステップ154に戻る。これにより、ステップ192の判定が肯定される迄、ステップ154〜194が繰り返され、全ての変異位置について、対応する格納領域102の位置と変異パターンリストとが変異マスタテーブル28に各々登録される。
ステップ192の判定が肯定されるとステップ196へ移行し、ステップ196において、生成部18は生成処理を行う。以下、図9を参照して生成処理を説明する。
図9に示す生成処理が開始される時点では、変数kにはN個の変異位置に割り当てた格納領域102の総数が設定されている。これに基づき、ステップ200において、生成部18は、変異格納データ記憶領域80に、2ビットの格納領域102をk個含む変異格納データ100の記憶領域をM個(処理対象の全個体分)確保する。次のステップ202において、生成部18は、変数i及び変数jに各々0を設定する。
ステップ204において、生成部18は、変異マスタテーブル28から変異位置iの情報(対応する格納領域102の位置及び変異パターンリスト)を取得する。次のステップ206において、生成部18は、ステップ204で取得した変異位置iの情報に基づいて、変異位置iにおける変異パターンの種類数r及び変異位置iに対応する格納領域の数uを計数する。また、生成部18は、ステップ204で取得した変異位置iの情報に基づき、変異位置iに対応する個々の格納領域102の位置を、格納領域102の位置の昇順に並べた格納領域位置の配列Y(y0,…,yu-1)を生成する。
ステップ208において、生成部18は、前述のステップ158と同様に、変異位置iの変異情報40を取得する。ステップ210において、生成部18は、ステップ208で取得した変異位置iの変異情報40から個体jの変異位置iの変異パターンを抽出する。ステップ212において、生成部18は、ステップ210で抽出した変異パターンを、ステップ204で取得した変異位置iの変異パターンリストと照合することで、個体jの変異位置iの変異パターンに対応するパターン番号pを判別する。
ステップ214において、生成部18は、変数vに0を設定する。ステップ216において、生成部18は、変数vが、パターン番号pを3で除算して整数化した値に一致するか否か判定する(次の(4)式も参照)。
v=INT(p/3) …(4)
ステップ216の判定が肯定された場合はステップ220へ移行する。ステップ220において、生成部18は、個体jの変異格納データ100のうち位置yvの格納領域102に、パターン番号pを3で除算した余りを表すバイナリ値を格納する(次の(5)式も参照)。
Pattern[j][yv]←MOD(p/3) …(5)
但し、Pattern[j][yv]は、個体jの変異格納データ100の位置yvの格納領域102を表し、MOD(a/b)はa/bの余りを表す。
また、ステップ216の判定が否定された場合はステップ222へ移行する。ステップ222において、生成部18は、個体jの変異格納データ100のうち位置yvの格納領域102にコード(11)Bを格納する。なお、(11)Bは特定コードの一例である。ステップ220又はステップ222を行うとステップ224へ移行する。
ステップ224において、生成部18は、変数vが、変異位置iに対応する格納領域の数uから1を減算した値に達したか否か判定する。ステップ224の判定が否定された場合はステップ226へ移行し、ステップ226において、生成部18は、変数vを1だけインクリメントし、ステップ216へ戻る。これにより、ステップ224の判定が肯定される迄、ステップ216〜226が繰り返され、個体jの変異格納データ100のうち変異位置iに対応する格納領域102に、パターン番号pに対応するコードが各々格納される。そして、ステップ224の判定が肯定されると、ステップ228へ移行する。
ステップ228において、生成部18は、変数jが、処理対象の個体の総数Mから1を減算した値に達したか否か判定する。ステップ228の判定が否定された場合はステップ230へ移行し、ステップ230において、生成部18は、変数jを1だけインクリメントし、ステップ210に戻る。これにより、ステップ228の判定が肯定される迄、ステップ210〜230が繰り返される。従って、ステップ208で取得した変異情報40から各個体の変異位置iの変異パターンを順に抽出し、各個体の変異格納データ100中の変異位置iに対応する格納領域102に、変異パターンに対応するコードを格納する処理が繰り返される。
ステップ228の判定が肯定されるとステップ232へ移行し、ステップ232において、生成部18は、変数jに0を設定する。次のステップ234において、生成部18は、変数iが変異位置の総数Nから1を減算した値に達したか否か判定する。ステップ234の判定が否定された場合はステップ236へ移行し、ステップ236において、生成部18は、変数iを1だけインクリメントしてステップ204に戻る。これにより、ステップ234の判定が肯定される迄、ステップ204〜236が繰り返され、全ての変異位置について、各個体の変異格納データ100へのコードの格納が行われる。そして、ステップ234の判定が肯定されると、生成処理(図8の変異データ格納処理)を終了する。
上述した生成処理(図9)による処理結果の一例として、変異格納データ100のうち、1つの変異位置に対応する格納領域102に格納されるコードの一例を図13,14に示す。図13,14は、同一の変異位置に対応する格納領域の数u=3で、前記変異位置における変異パターンの種類数r=10の場合に、パターン番号p(=0〜9)と各格納領域102に格納されるバイナリ値との関係を示している。なお、図13等に示す"NULL"は、本明細書ではコード(11)Bを意味している。
例えば、1つの変異位置に2ビットの格納領域102を3個割り当てた場合、個々の格納領域102を一体(6ビットの格納領域)とみなせば、3個の格納領域102に格納可能なコードの種類数sはs=26=64で、64種類の変異パターンを表すことができる。図12には、上記の具体例として、3個の格納領域102を一体とみなしてコード(001101)Bを格納した例を示す。しかしながら、この場合、1個の格納領域102に格納されているコードが或る値のときに、このコードが表している可能性がある変異パターンの種類数=64/4=16種類あり、このコードのみでは3個の格納領域102が表す変異パターンは判別できない。このため、集計処理において、3個の格納領域102からコードを各々取得し、取得した3個のコードを変異マスタテーブル28に類する情報と照合して変異パターンを判別し、判別した変異パターンに集計値をインクリメントする処理を繰り返する必要がある。
これに対し、本実施形態では、同一の変異位置に対応する格納領域102のうち、変異パターン(パターン番号p)に対応する何れか1つの格納領域102(特定格納領域)に変異パターンに対応するコードを格納し、残りの格納領域102にコード(11)Bを格納する。例えば図13,14の例では、パターン番号p=0〜2の場合は、「領域0」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域1」及び「領域2」にコード(11)Bを格納する。また、パターン番号p=3〜5の場合は、「領域1」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域0」及び「領域2」にコード(11)Bを格納する。また、パターン番号p=6〜8の場合は、「領域2」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域0」及び「領域1」にコード(11)Bを格納する。そして、パターン番号p=9の場合は、例外的に、「領域0」〜「領域2」にコード(11)Bを各々格納する。
図13,14の例において、3個の格納領域102によって表すことができる変異パターンの種類数は10種類である。しかし、図13,14の例において、各格納領域102に格納されるパターン番号pに対応するコード((00)B〜(10)Bの何れか)は、それぞれ1つの変異パターン(パターン番号p)に対応している。また、図13,14の例において、パターン番号p=9以外の場合に特定格納領域以外の格納領域に格納する(11)Bは、自領域がパターン番号pに対応するコードを格納していないことを意味している。
このため、後述する集計処理において、まず、変異格納データ100中の個々の各格納領域102に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する一時集計処理を行うことができる。この一時集計処理は、処理対象の個体の総数Mと格納領域の数kの積を繰り返し回数とする繰り返し処理となるが、一時集計処理の間は変異マスタテーブル28を参照する必要が無いので、高速に処理できる。そして、一時集計処理の後で、一時集計処理による集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する最終集計処理を行うことができる。
なお、図13,14に示す例は、格納領域の数u=3で、変異パターンの種類数r=10の例であり、種類数r≠3n+1であれば、同一の変異位置に対応する全ての格納領域102にコード(11)Bを各々格納するパターン番号pは生じない。また、種類数r≦4の場合は格納領域の数u=1になり、対応する1個の格納領域102、すなわち標準格納領域102Aを特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納する。
次に、図15を参照し、上述した変異データ格納処理が終了した後に実行される集計処理を説明する。記憶部56の一時集計テーブル記憶領域84には、図17に一例を示す一時集計テーブル104が記憶されている。一時集計テーブル104は、変異格納データ100中の個々の格納領域毎、かつコード毎((00)B〜(11)Bの各々)の集計値を記憶している。
集計処理のステップ250において、第1集計部20は、一時集計テーブル104に記憶されている全ての集計値を0にすることで、一時集計テーブル104を0クリアする。なお、以下では、一時集計テーブル104に記憶されている位置wの格納領域102のコードxの集計値をTempAgg[w][x]と表記する。
ステップ252において、第1集計部20は、変数j及び格納領域102の位置を識別するための変数wに各々0を設定する。ステップ254において、第1集計部20は、記憶部56の変異格納データ記憶領域80から個体jの変異格納データ100を取得する。ステップ256において、第1集計部20は、ステップ254で取得した個体jの変異格納データ100から、位置wの格納領域102に格納されたコードxを抽出する。
次のステップ258において、第1集計部20は、一時集計テーブル104に記憶されている集計値のうち、位置wの格納領域のコードxの集計値TempAgg[w][x]を1だけインクリメントする。ステップ260において、第1集計部20は、変数wが、格納領域の数kから1を減算した値に達したか否か判定する。ステップ260の判定が否定された場合はステップ262へ移行し、ステップ262において、第1集計部20は、変数wを1だけインクリメントしてステップ256に戻る。これにより、ステップ260の判定が肯定される迄、ステップ254〜262が繰り返され、例として図17にも示すように、個体jの変異格納データ100の各格納領域に格納されたコードに応じて、各格納領域毎かつコード毎の出現数の集計が行われる。
ステップ260の判定が肯定されるとステップ264へ移行し、ステップ264において、第1集計部20は変数wに0を設定する。次のステップ266において、第1集計部20は、変数jが処理対象の個体の総数Mから1を減算した値に達したか否か判定する。ステップ266の判定が否定された場合はステップ268へ移行し、ステップ268において、第1集計部20は、変数jを1だけインクリメントし、ステップ254に戻る。
これにより、ステップ266の判定が肯定される迄、ステップ254〜268が繰り返される。従って、各個体の変異格納データ100を順に取得し、取得した変異格納データ100の各格納領域に格納されたコードに応じて、各格納領域毎かつコード毎の出現数を集計する一時集計処理が行われる。上記の一時集計処理は、変異マスタテーブル28を参照することなく集計を行っているので、処理速度の高速化が実現される。
ステップ266の判定が肯定されるとステップ270へ移行し、ステップ270において、第2集計部22は最終集計処理を行う。以下、図16を参照して最終集計処理を説明する。 記憶部56の最終集計テーブル記憶領域86には、図18に一例を示す最終集計テーブル106が記憶されている。最終集計テーブル106は、変異位置毎かつパターン番号p毎(変異パターン毎)の集計値を記憶する記憶領域が設けられている。
最終集計処理のステップ300において、第2集計部22は、最終集計テーブル106に記憶されている全ての集計値を0にすることで、最終集計テーブル106を0クリアする。なお、以下では、最終集計テーブル106に記憶されている変異位置iのz番目の変異パターンの集計値をFinAgg[i][z]と表記する。
ステップ302において、第2集計部22は、変数i、変異パターン(パターン番号p)を識別するための変数z、変数v及び変数xに各々0を設定する。また、ステップ304において、第2集計部22は、変異マスタテーブル28から変異位置iの情報(対応する格納領域102の位置及び変異パターンリスト)を取得する。
ステップ306において、第2集計部22は、ステップ204で取得した変異位置iの情報に基づいて、変異位置iにおける変異パターンの種類数r及び変異位置iに対応する格納領域の数uを計数する。また、第2集計部22は、ステップ304で取得した変異位置iの情報に基づき、変異位置iに対応する個々の格納領域102の位置を、格納領域102の位置の昇順に並べた格納領域位置の配列Y(y0,…,yu-1)を生成する。
ステップ308において、第2集計部22は、一時集計テーブル104の位置yvの格納領域のコードxの集計値TempAgg[yv][x]を、最終集計テーブル106の変異位置iのz番目の変異パターンの集計値FinAgg[i][z]の記憶領域にコピーする。ステップ310において、第2集計部22は、変数xの値が2に達したか否か判定する。ステップ310の判定が否定された場合はステップ312へ移行し、ステップ312において、第2集計部22は、変数xを1だけインクリメントすると共に、変数zも1だけインクリメントし、ステップ308に戻る。これにより、ステップ310の判定が肯定される迄、ステップ308〜312が繰り返される。
また、ステップ310の判定が肯定されるとステップ314へ移行し、ステップ314において、第2集計部22は、変数xに0を設定する。次のステップ316において、第2集計部22は、変異位置iに対応する格納領域の数uから1を減算した値に達したか否か判定する。ステップ316の判定が否定された場合はステップ318へ移行し、ステップ318において、第2集計部22は、変数vを1だけインクリメントし、ステップ308へ戻る。これにより、ステップ316の判定が肯定される迄、ステップ308〜318が繰り返される。
上述したステップ308〜318により、個々の変異位置毎に、一時集計テーブル104に記憶された変異位置iに対応する各格納領域の集計値群が、最終集計テーブル106の変異位置iの集計値の記憶領域群に各々コピーされる。一例として図18には、「コピー」と表記して示すように、一時集計テーブル104に記憶された変異位置2に対応する位置=2,k−1の格納領域の集計値群が、最終集計テーブル106の変異位置2の集計値の記憶領域群に各々コピーされた例を示している。
また、ステップ316の判定が肯定されるとステップ320へ移行し、ステップ320において、第2集計部22は、変異パターンの種類数rから1を減算した値が、格納領域の数uに3を乗じた値と一致するか否か判定する(次の(6)式も参照)。
r−1=3u …(6)
ステップ320の肯定が否定された場合、変異位置iのr種類の変異パターンのうちの最終変異パターン(パターン番号p=r−1の変異パターン)は、変異位置iに対応する全ての格納領域102にコード(11)Bを格納する変異パターンである。この変異パターンの一例は、図14に示す例でパターン番号p=9に対応する変異パターンである。ステップ320の判定が肯定された場合はステップ322へ移行する。
例えば、図14に示す例では、パターン番号p=3〜9のときに格納領域0にコード(11)Bを格納し、パターン番号p=0〜2,6〜9のときに格納領域1にコード(11)Bを格納し、パターン番号p=0〜5のときに格納領域2にコード(11)Bを格納する。このため、変異位置iの最終変異パターンの集計値については、演算により求める必要がある。
ステップ322において、第2集計部22は、最終集計テーブル106の変異位置iのz+1番目の変異パターンの集計値FinAgg[i][z+1]に、個体の総数Mから集計値FinAgg[i][0]〜集計値FinAgg[i][r−1]の合計を減算した値を設定する。なお、個体の総数Mは、一時集計テーブル104に記憶されている、変異位置iに対応する位置yv(変数vは0〜u−1のうちの何れか1つ)の格納領域のコードx=(00)B〜(11)Bの集計値TempAgg[yv][0]〜集計値TempAgg[yv][3]の合計値に等しい。従って、ステップ322の処理は次の(6)式又は(7)式で表すことができる。
一例として図18には、「算出」と表記して示すように、個体の総数M(=30)から、最終変異パターン(パターン番号p=6)以外のパターン番号p=0〜5の変異パターンの集計値の合計(=22)を減算することで、最終変異パターンの集計値を算出している。
一方、ステップ320の判定が否定された場合は、変異位置iに出現したr種類の変異パターンの中に、変異位置iに対応する全ての格納領域102にコード(11)Bを格納するコードが割り当てられた変異パターンは存在していない。このため、ステップ320の判定が否定された場合は、ステップ322をスキップしてステップ324へ移行する。上述した処理により、変異位置iにおける各変異パターン(パターン番号p)毎の出現数が、最終集計テーブル106に記憶されることになる。
ステップ324において、第2集計部22は、変異マスタテーブル28から取得した変異位置iの変異パターンリストに基づいて、最終集計テーブルに記憶されている変異位置iのパターン番号を対応する変異パターンに変換する。次のステップ326において、第2集計部22は、変数z及び変数vに各々0を設定する。
次のステップ328において、第2集計部22は、変数iが変異位置の総数Nから1を減算した値に達したか否か判定する。ステップ328の判定が否定された場合はステップ330へ移行し、ステップ330において、第2集計部22は、変数iを1だけインクリメントしてステップ304に戻る。これにより、ステップ328の判定が肯定される迄、ステップ304〜330が繰り返され、全ての変異位置について、上述した最終集計処理が行われる。
なお、上記の最終集計処理は、変異マスタテーブル28にアクセスする処理を含んでいる。しかし、処理対象の全個体に対する格納領域102単位での集計は、先に説明した一時集計処理(図15のステップ250〜268)で完了しているので、最終集計処理における処理の繰り返し回数=N(変異位置の数)となる。このため、処理の繰り返し回数=M(処理対象の個体の総数)×k(格納領域の数)になる一時集計処理と比較して、変異マスタテーブル28にアクセスする処理を含んでいることが処理時間に与える影響は非常に小さくなる。
ステップ328の判定が肯定された場合は、最終集計処理を終了して集計処理(図15)のステップ272へ移行する。ステップ272において、第2集計部22は、上述した処理によって得られた最終集計結果(個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計した結果)を集計結果処理装置16へ出力し、集計処理を終了する。
〔第2実施形態〕
次に開示の技術の第2実施形態について説明する。なお、第2実施形態は第1実施形態と同一の構成であるので、各部分に同一の符号を付して構成の説明を省略し、以下、第2実施形態の作用について、第1実施形態と異なる部分を説明する。
まず、図19を参照し、第2実施形態に係る生成処理を説明する。第2実施形態に係る生成処理は、第1実施形態で説明した生成処理(図9)と比較して、ステップ216に代えてステップ217の判定を行っている点で相違している。ステップ217において、生成部18は、変数vがパターン番号pを3で除算した値以上か否か判定する。ステップ217の判定が肯定された場合はステップ220へ移行し、ステップ217の判定が否定された場合はステップ222へ移行する。
第2実施形態に係る生成処理による処理結果の一例として、変異格納データ100のうち、1つの変異位置に対応する格納領域102に格納されるコードの一例を図20,21に示す。図20,21は、同一の変異位置に対応する格納領域の数u=3で、前記変異位置における変異パターンの種類数r=10の場合に、パターン番号p(=0〜9)と各格納領域102に格納されるバイナリ値との関係を示している。
第2実施形態では、同一の変異位置に対応する格納領域102のうち、変異パターン(パターン番号p)に対応する何れか1つの格納領域102(特定格納領域)に変異パターンに対応するコードを格納する。また、残りの格納領域102のうち、特定格納領域が変異格納データ100中の前方に存在する格納領域102(第1格納領域)には、特定格納領域と同じコードを格納する。また、残りの格納領域102のうち、特定格納領域が変異格納データ100中の後方に存在する格納領域102(第2格納領域)には(11)Bを格納する。
例えば図20,21の例では、パターン番号p=0〜2の場合は、「領域0」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域1」及び「領域2」にも特定格納領域と同じコードを格納する。また、パターン番号p=3〜5の場合は、「領域1」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域0」にコード(11)Bを格納し、「領域2」に特定格納領域と同じコードを格納する。また、パターン番号p=6〜8の場合は、「領域2」を特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納し、「領域0」及び「領域1」にコード(11)Bを格納する。そして、パターン番号p=9の場合は、例外的に、「領域0」〜「領域2」にコード(11)Bを各々格納する。
図20,21の例において、3個の格納領域102に格納されるパターン番号pに対応するコード((00)B〜(10)Bの何れか)は、それぞれ1つの変異パターン(パターン番号p)に対応している。また、図20,21の例において、パターン番号p=9以外の場合に特定格納領域以外の格納領域に格納する(11)Bは、自領域がパターン番号pに対応するコードを格納していないことを意味している。
このため、第1実施形態と同様に、集計処理において、まず、変異格納データ100中の個々の各格納領域102に格納されたコードの出現数を、処理対象の全個体に亘って個々の格納領域毎かつコード毎に集計する一時集計処理を行うことができる。この一時集計処理は、処理対象の個体の総数Mと格納領域の数kの積を繰り返し回数とする繰り返し処理となるが、一時集計処理の間は変異マスタテーブル28を参照する必要が無いので、高速に処理できる。そして、一時集計処理の後で、一時集計処理による集計結果から、個々の変異位置毎に、処理対象の全個体における変異パターンの種類毎の変異パターンの出現数を集計する最終集計処理を行うことができる。
なお、図20,21に示す例は、格納領域の数u=3で、変異パターンの種類数r=10の例であり、種類数r≠3n+1であれば、同一の変異位置に対応する全ての格納領域102にコード(11)Bを各々格納するパターン番号pは生じない。また、種類数r≦4の場合は格納領域の数u=1になり、対応する1個の格納領域102、すなわち標準格納領域102Aを特定格納領域とし、パターン番号pに対応するコード((00)B〜(10)Bの何れか)を格納する。
次に図22を参照し、第2実施形態に係る最終集計処理を説明する。第2実施形態に係る最終集計処理は、第1実施形態で説明した最終集計処理(図16)と比較して、ステップ308に代えてステップ309の判定を行っている点で相違している。ステップ309において、第2集計部22は、一時集計テーブル104の位置yvの格納領域102のコードxの集計値TempAgg[yv][x]から集計値TempAgg[yv-1][x]を減算した値を演算する。そして、第2集計部22は、演算した値を、最終集計テーブル106の変異位置iのz番目の変異パターンの集計値FinAgg[i][z]に設定する。但し、v=0(v−1=−1)の場合、集計値TempAgg[yv-1][x]=0である。
上記のステップ309を含むステップ308〜318により、個々の変異位置毎に、一時集計テーブル104における変異位置iに対応する先頭の格納領域の集計値が、最終集計テーブル106の変異位置iの集計値の記憶領域にコピーされる。一例として図23には、「コピー」と表記して示すように、一時集計テーブル104における変異位置2に対応する位置=2の格納領域の集計値が、最終集計テーブル106の変異位置2のパターン0〜2の集計値の記憶領域に各々コピーされた例を示している。
また、個々の変異位置毎に、一時集計テーブル104における変異位置iに対応する2番目以降の格納領域の集計値は、同一の変異位置の1つ前の格納領域の集計値が減算された上で、最終集計テーブル106の変異位置iの集計値の記憶領域に設定される。図23に示す例では、「算出」と表記したように、一時集計テーブル104における変異位置2に対応する位置=k−1の格納領域のコード(00)B〜(10)Bの集計値は、同一の変異位置の1つ前の格納領域である位置=k−1の格納領域の集計値が減算される。そして、減算後の値が、最終集計テーブル106の変異位置2のパターン3〜5の集計値の記憶領域に各々設定されている。
また、第2実施形態に係る最終集計処理は、第1実施形態で説明した最終集計処理と比較して、ステップ322に代えてステップ323の処理を行っている点でも相違している。ステップ323において、第2集計部22は、最終集計テーブル106の変異位置iのパターン番号p=z+1の集計値FinAgg[i][z+1]に、一時集計テーブル104の位置yvの格納領域102のコード3(=(11)B)の集計値TempAgg[yv][3]を設定する。図23に示す例では、「コピー」と表記したように、一時集計テーブル104における変異位置2に対応する位置=k−1の格納領域のコード(11)Bの集計値が、最終集計テーブル106の変異位置2のパターン6の集計値の記憶領域にコピーされている。
上述したステップ309,323を含む、第2実施形態に係る最終集計処理によっても、各変異位置毎に、各変異パターン(パターン番号p)毎の出現数が、最終集計テーブル106に記憶されることになる。
このように、上記の各実施形態において、生成部18は、遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報40から、個体毎の変異格納データ100を生成する。変異格納データ100の生成は、個々の変異位置のうち、処理対象の複数の個体での変異パターンの種類数rが4以下の第1変異位置と、種類数rが4を超える第2変異位置と、で以下のように処理を切り替える。すなわち、第1変異位置については、個々の変異位置に対応する標準格納領域102Aの配列中の第1変異位置に対応する標準格納領域102Aに、第1変異位置の変異パターンに対応するコードを格納する。第2変異位置については、第2変異位置に対応する標準格納領域102A及び標準格納領域102Aの配列の後に追加した第2変異位置に対応する追加格納領域102Bを、第2変異位置の変異パターンに対応する特定格納領域と残りの格納領域とに分ける。そして、特定格納領域に第2変異位置の変異パターンに対応するコードを格納し、残りの格納領域に所定のコードを格納する。これにより、遺伝情報中の個々の変異位置における変異パターン毎の出現数を集計する集計処理の高速化を実現することができる。
また、上記の各実施形態において、生成部18は、変異情報40から個々の変異位置毎に処理対象の複数の個体に出現した全種類の変異パターンを抽出する。また生成部18は、変異パターンの抽出結果から、個々の変異位置毎のパターン番号と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の変異格納データ100中の位置を登録した変異マスタテーブル28を生成する。そして生成部18は、生成した変異マスタテーブル28に基づいて個体毎の変異格納データ100を生成する。これにより、変異マスタテーブル28の生成と変異格納データ100の生成を並列に行う場合と比較して、新たな変異パターンの出現に伴って生成済みの変異格納データ100を書き替える処理を行う必要がなくなり、変異格納データ100の生成も高速化できる。
また、第1実施形態において、生成部18は、所定のコードとしてコード(11)Bを用いる。また生成部18は、第2変異位置がr−1=3nを満たし、かつ第2変異位置における変異パターンがr種類の変異パターンのうちの最終変異パターンの場合には、第2変異位置に対応する全ての格納領域にコード(11)Bを格納する。これにより、k個の2ビットの格納領域で表すことができる変異パターンの種類数r=3k+1とすることができ、変異格納データの長さを短くすることができる。
また、上記の各実施形態において、第1集計部20は、個体毎の変異格納データ100から、変異格納データ100中の個々の格納領域に格納されたコードの出現数を、複数の個体に亘って個々の格納領域毎かつコード毎に集計する。また、第2集計部22は、変異マスタテーブル28に基づき、第1集計部20による個々の格納領域毎の集計結果から、個々の変異位置毎に、複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する。集計処理を、第1集計部20による上記の集計処理と、第2集計部22による上記の集計処理に分けることで、第1集計部20による集計処理の途中で、変異マスタテーブル28にアクセスする必要が無くなり、集計処理を高速化できる。
また、第1実施形態において、第2集計部22は、個々の格納領域毎の集計結果のうち、同一の第2変異位置に対応する複数の格納領域の集計結果を第2変異位置の集計結果に統合する。また第2集計部22は、r−1=3nを満たす第2変異位置については、最終変異パターンの出現数として、処理対象の個体の数から最終変異パターン以外の変異パターンの出現数の合計値を減算した値を設定する。そして第2集計部22は、変異マスタテーブル28に登録されたパターン番号とコードとの対応関係に基づいて、第1集計部20による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する。これにより、変異格納データ100の個々の格納領域毎かつコード毎の出現数の集計結果から、個々の変異位置毎かつ変異パターン毎の変異パターンの出現数が得られる。
また、上記の第2実施形態において、生成部18は、第2変異位置に対応する格納領域のうち、特定格納領域が変異格納データ100中で前方に存在する第1格納領域には、特定格納領域と同じコードを格納する。また生成部18は、特定格納領域が変異格納データ100中で後方に存在する第2格納領域にはコード(11)Bを格納する。また生成部18は、第2変異位置がr−1=3nを満たし、かつ第2変異位置における変異パターンがr−1番目の最終変異パターンの場合には、第2変異位置に対応する全ての格納領域にコード(11)Bを格納する。これにより、第1実施形態と同様に、k個の2ビットの格納領域で表すことができる変異パターンの種類数r=3k+1とすることができ、変異格納データの長さを短くすることができる。
また、上記の第2実施形態において、第2集計部22は、個々の格納領域毎の集計結果のうち、同一の第2変異位置に対応する複数の格納領域の集計結果を第2変異位置の集計結果に統合する。また第2集計部22は、同一の第2変異位置に対応する格納領域が変異格納データ100中で前方に存在する格納領域について集計されたコードの出現数のうち、コード(11)B以外のコードの出現数を、次のように更新する。すなわち、コード(11)B以外のコードの出現数から、変異格納データ100中で前方に存在する直近の格納領域について集計されたコード(11)B以外のコードの出現数を各々減算する。そして第2集計部22は、変異マスタテーブル28に登録されたパターン番号とコードとの対応関係に基づいて、第1集計部20による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する。これにより、変異格納データ100の個々の格納領域毎かつコード毎の出現数の集計結果から、個々の変異位置毎かつ変異パターン毎の変異パターンの出現数が得られる。
なお、変異パターン(パターン番号)とコードとの関係は図14又は図21に示す関係に限られるものではない。例えば、パターン番号p=0の場合に対応する全格納領域102に特定コードを設定する関係を適用してもよい。また、(11)B以外のコードを特定コードに割り当ててもよい。また、図21に示す関係は、特定格納領域が変異格納データ100中で前方に存在する第1格納領域に特定格納領域と同じコードを格納するが、特定格納領域が変異格納データ100中で後方に存在する第2格納領域に特定格納領域と同じコードを格納してもよい。
また、開示の技術は人間以外の生物にも適用可能である。上記では格納領域を2ビットとしていたが、格納領域の長さ(固定ビット長)は、開示の技術を適用する生物において、大多数の変異位置での変異パターンの種類数rに応じて適宜選択可能である。また、開示の技術を人間に適用する場合であっても、格納領域の長さ(固定ビット長)は2ビットに限られるものではなく、例えば3ビット等を採用してもよい。
また、上記では、開示の技術に係る変異情報処理プログラムの一例である変異情報処理プログラム70が記憶部56に予め記憶(インストール)されている態様を説明した。しかし、開示の技術に係る変異情報処理プログラムは、CD−ROMやDVD−ROM、メモリカード等の記録媒体に記録されている形態で提供することも可能である。
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する生成部を含む変異情報処理装置。
(付記2)
前記生成部は、前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する付記1記載の変異情報処理装置。
(付記3)
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する付記1又は付記2記載の変異情報処理装置。
(付記4)
前記生成部は、前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する付記1又は付記2記載の変異情報処理装置。
(付記5)
前記生成部によって生成された個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計する第1集計部と、
前記生成部によって生成された前記テーブルに基づき、前記第1集計部による個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する第2集計部と、
を更に含む付記2項記載の変異情報処理装置。
(付記6)
前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第2集計部は、個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、(r−1)=n×(s−1)を満たす前記第2変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記5記載の変異情報処理装置。
(付記7)
前記生成部は、前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
前記第2集計部は、個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、同一の前記第2変異位置に対応する格納領域が前記変異格納データ中で前記第1方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第1方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第2変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記5記載の変異情報処理装置。
(付記8)
前記生成部は、(r−1)≠n×(s−1)を満たす前記第2変異位置(但し、nは自然数)については、対応する格納領域を前記配列の後にINT((r−1)/(s−1))個追加し(但し、INT(x)はxの小数点以下を切り捨てて整数化することを表す)、(r−1)=n×(s−1)を満たす前記第2変異位置については、対応する格納領域を前記配列の後に((r−1)/(s−1))−1個追加する付記1〜付記7の何れか1項記載の変異情報処理装置。
(付記9)
前記固定ビット長は2ビットである付記1〜付記8の何れか1項記載の変異情報処理装置。
(付記10)
コンピュータが、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行する変異情報処理方法。
(付記11)
前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する付記10記載の変異情報処理方法。
(付記12)
前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する付記10又は付記11記載の変異情報処理方法。
(付記13)
前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する付記10又は付記11記載の変異情報処理方法。
(付記14)
生成した個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計し、
生成した前記テーブルに基づき、個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する付記11記載の変異情報処理方法。
(付記15)
前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、(r−1)=n×(s−1)を満たす前記第2変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記14記載の変異情報処理方法。
(付記16)
前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、同一の前記第2変異位置に対応する格納領域が前記変異格納データ中で前記第1方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第1方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第2変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する付記14記載の変異情報処理方法。
(付記17)
(r−1)≠n×(s−1)を満たす前記第2変異位置(但し、nは自然数)については、対応する格納領域を前記配列の後にINT((r−1)/(s−1))個追加し(但し、INT(x)はxの小数点以下を切り捨てて整数化することを表す)、(r−1)=n×(s−1)を満たす前記第2変異位置については、対応する格納領域を前記配列の後に((r−1)/(s−1))−1個追加する付記10〜付記16の何れか1項記載の変異情報処理方法。
(付記18)
前記固定ビット長は2ビットである付記10〜付記17の何れか1項記載の変異情報処理方法。
(付記19)
コンピュータに、
遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行させるための変異情報処理プログラム。
10…変異情報分析支援システム、12…変異情報処理装置、14…変異情報抽出装置、16…集計結果処理装置、18…生成部、20…第1集計部、22…第2集計部、24…第1記憶部、28…変異マスタテーブル、32…変異情報DB、36…個体情報DB、40…変異情報、50…コンピュータ、52…CPU、54…メモリ、56…記憶部、70…変異情報処理プログラム、100…変異格納データ、102…格納領域、104…一時集計テーブル、106…最終集計テーブル

Claims (9)

  1. 遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する生成部を含む変異情報処理装置。
  2. 前記生成部は、前記変異情報から個々の変異位置毎に前記複数の個体に出現した全種類の変異パターンを抽出し、個々の変異位置毎の全種類の変異パターンの抽出結果から、個々の変異位置毎の変異パターンの種類と格納領域に格納するコードとの対応関係、及び、個々の変異位置に対応する格納領域の前記変異格納データ中の位置を登録したテーブルを生成し、生成した前記テーブルに基づいて個体毎の前記変異格納データを生成する請求項1記載の変異情報処理装置。
  3. 前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する請求項1又は請求項2記載の変異情報処理装置。
  4. 前記生成部は、前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納する請求項1又は請求項2記載の変異情報処理装置。
  5. 前記生成部によって生成された個体毎の前記変異格納データから、前記変異格納データ中の個々の格納領域に格納されたコードの出現数を、前記複数の個体に亘って個々の格納領域毎かつコード毎に集計する第1集計部と、
    前記生成部によって生成された前記テーブルに基づき、前記第1集計部による個々の格納領域毎の集計結果から、個々の変異位置毎に、前記複数の個体における変異パターンの種類毎の変異パターンの出現数を集計する第2集計部と、
    を更に含む請求項2記載の変異情報処理装置。
  6. 前記生成部は、前記所定のコードとして予め設定された特定コードを用い、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
    前記第2集計部は、個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、(r−1)=n×(s−1)を満たす前記第2変異位置については、前記特定変異パターンの出現数として、処理対象の個体の数から特定変異パターン以外の変異パターンの出現数の合計値を減算した値を設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する請求項5記載の変異情報処理装置。
  7. 前記生成部は、前記第2変異位置に対応する格納領域のうち、前記特定格納領域が前記変異格納データ中で第1方向に存在する第1格納領域には、前記所定のコードとして前記特定格納領域と同じコードを格納し、前記特定格納領域が前記変異格納データ中で前記第1方向と反対の第2方向に存在する第2格納領域には、前記所定のコードとして予め設定された特定コードを格納し、前記第2変異位置が(r−1)=n×(s−1)を満たし、かつ前記第2変異位置における変異パターンがr種類の変異パターンのうちの特定変異パターンの場合には、前記第2変異位置に対応する全ての格納領域に前記特定コードを格納し、
    前記第2集計部は、個々の格納領域毎の集計結果のうち、同一の前記第2変異位置に対応する複数の格納領域の集計結果を前記第2変異位置の集計結果に統合すると共に、同一の前記第2変異位置に対応する格納領域が前記変異格納データ中で前記第1方向に存在する格納領域について集計されたコードの出現数のうち、前記特定コード以外のコードの出現数については、前記特定コード以外のコードの出現数から、前記第1方向に存在する直近の格納領域について集計された前記特定コード以外のコードの出現数を各々減算した値を、前記第2変異位置の集計結果に設定し、前記テーブルに登録された前記対応関係に基づいて前記第1集計部による集計結果に含まれるコードの出現数を対応する変異パターンの出現数に変換する請求項5記載の変異情報処理装置。
  8. コンピュータが、
    遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数が固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行する変異情報処理方法。
  9. コンピュータに、
    遺伝情報中の個々の変異位置における処理対象の複数の個体の各々の変異パターンを表す情報を含む変異情報から、個々の変異位置のうち、前記複数の個体での変異パターンの種類数rが固定ビット長の格納領域に格納可能なコードの種類数s以下の第1変異位置については、個々の変異位置に対応する前記固定ビット長の格納領域の配列中の前記第1変異位置に対応する格納領域に、前記第1変異位置の変異パターンに対応するコードを格納し、前記変異パターンの種類数rが前記コードの種類数sを超える第2変異位置については、前記配列中の前記第2変異位置に対応する格納領域、及び、前記配列の後に追加した前記第2変異位置に対応する前記固定ビット長の格納領域のうち、前記第2変異位置の変異パターンに対応する特定格納領域に前記第2変異位置の変異パターンに対応するコードを格納すると共に、残りの格納領域に所定のコードを格納した、個体毎の変異格納データを生成する処理を実行させるための変異情報処理プログラム。
JP2016030268A 2016-02-19 2016-02-19 変異情報処理装置、方法及びプログラム Active JP6648549B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016030268A JP6648549B2 (ja) 2016-02-19 2016-02-19 変異情報処理装置、方法及びプログラム
US15/428,440 US10783983B2 (en) 2016-02-19 2017-02-09 Variant information processing device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016030268A JP6648549B2 (ja) 2016-02-19 2016-02-19 変異情報処理装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2017146928A JP2017146928A (ja) 2017-08-24
JP6648549B2 true JP6648549B2 (ja) 2020-02-14

Family

ID=59629878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016030268A Active JP6648549B2 (ja) 2016-02-19 2016-02-19 変異情報処理装置、方法及びプログラム

Country Status (2)

Country Link
US (1) US10783983B2 (ja)
JP (1) JP6648549B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729355B (zh) * 2017-08-31 2020-12-29 上海金大师网络科技有限公司 一种基于数据储存类型TVariant的数据存储方法及其装置
SE541799C2 (en) * 2018-04-11 2019-12-17 David Yudovich Determination of frequency distribution of nucleotide sequence variants
US20220317922A1 (en) * 2021-03-30 2022-10-06 EMC IP Holding Company LLC Provisioning Zoned Storage Devices to Sequential Workloads

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2812342C (en) * 2011-09-26 2015-04-07 John TRAKADIS Method and system for genetic trait search based on the phenotype and the genome of a human subject
CN104937599B (zh) * 2013-02-28 2018-01-23 株式会社日立高新技术 数据解析装置及其方法
US9418203B2 (en) * 2013-03-15 2016-08-16 Cypher Genomics, Inc. Systems and methods for genomic variant annotation
US20160048633A1 (en) * 2013-03-15 2016-02-18 Cypher Genomics, Inc. Systems and methods for genomic variant annotation
WO2015058120A1 (en) * 2013-10-18 2015-04-23 Seven Bridges Genomics Inc. Methods and systems for aligning sequences in the presence of repeating elements
KR20160062763A (ko) * 2013-10-18 2016-06-02 세븐 브릿지스 지노믹스 인크. 유전자 샘플을 유전자형 결정하기 위한 방법 및 시스템

Also Published As

Publication number Publication date
US10783983B2 (en) 2020-09-22
JP2017146928A (ja) 2017-08-24
US20170242588A1 (en) 2017-08-24

Similar Documents

Publication Publication Date Title
Li et al. Fast and accurate long-read alignment with Burrows–Wheeler transform
JP6231944B2 (ja) 学習モデル作成装置、判定システムおよび学習モデル作成方法
JP6334431B2 (ja) データ分析装置、データ分析方法、およびデータ分析プログラム
JP6648549B2 (ja) 変異情報処理装置、方法及びプログラム
JP5638503B2 (ja) テキスト要約装置、方法及びプログラム
JP2019045895A (ja) 生成プログラム、生成方法、生成装置、及び剽窃検知プログラム
JP4143234B2 (ja) 文書分類装置、文書分類方法及び記憶媒体
Aldana et al. Data processing and germline variant calling with the sentieon pipeline
WO2021214833A1 (ja) 学習装置、異常検知装置、学習方法及び異常検知方法
JP5623369B2 (ja) テキスト要約装置、方法及びプログラム
JP5600693B2 (ja) クラスタリング装置及び方法及びプログラム
Xie et al. A combination of boosting and bagging for kdd cup 2009-fast scoring on a large database
KR102073833B1 (ko) 복수의 파일들 각각에 대한 피쳐들의 분포 정보를 기초로 기준 파일에 대한 유사 파일의 탐색이 가능한 전자 장치 및 동작 방법
CN107436913A (zh) 用于在分布式etl作业中控制倾斜的装置及方法
CN116503608A (zh) 基于人工智能的数据蒸馏方法及相关设备
JP6135432B2 (ja) 顧客分析プログラム、方法及び装置
CN112383819B (zh) 视频帧提取方法及相关设备
JP2009116593A (ja) 単語ベクトル生成装置、単語ベクトル生成方法、プログラムおよびプログラムを記録した記録媒体
JP6123372B2 (ja) 情報処理システム、名寄せ判定方法及びプログラム
JP5276503B2 (ja) データ解析装置、データ解析プログラムおよびその記録媒体
KR20170085396A (ko) 스캔도서 식별을 위한 특징벡터 클러스터링 및 데이터베이스 생성 방법
JP5600694B2 (ja) クラスタリング装置及び方法及びプログラム
JPWO2008155852A1 (ja) メモリ共有型並列処理システムにおいて表形式データを集計する方法及び装置
CN114846459A (zh) 用于智能且可扩展的模式匹配框架的方法和装置
JP2016134079A (ja) 分析プログラム、分析方法及び分析装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181011

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191217

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191230

R150 Certificate of patent or registration of utility model

Ref document number: 6648549

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150