Biopython-phenotype-microarray

提供:Dev Guides
移動先:案内検索

Biopython-表現型マイクロアレイ

表現型は、特定の化学物質または環境に対して生物が示す観察可能な特性または特性として定義されます。 表現型マイクロアレイは、多数の化学物質および環境に対する生物の反応を同時に測定し、データを分析して遺伝子変異、遺伝子特性などを理解します。

Biopythonは、表現型データを分析するための優れたモジュールBio.Phenotypeを提供します。 この章では、表現型マイクロアレイデータを解析、補間、抽出、分析する方法を学びましょう。

構文解析

表現型マイクロアレイデータは、CSVとJSONの2つの形式になります。 Biopythonは両方の形式をサポートしています。 Biopythonパーサーは、表現型マイクロアレイデータを解析し、PlateRecordオブジェクトのコレクションとして返します。 各PlateRecordオブジェクトには、WellRecordオブジェクトのコレクションが含まれています。 各WellRecordオブジェクトは、8行12列の形式でデータを保持します。 8行はAからHで表され、12列は01から12で表されます。 たとえば、4 ^ th ^行と6 ^ th ^列はD06で表されます。

次の例で構文の形式と概念を理解しましょう-

  • ステップ2 *-以下のようにphenotpeモジュールをロードします-
>>> from Bio import phenotype
  • ステップ3 *-データファイルとフォーマットオプション(「pm-csv」)を渡すphenotype.parseメソッドを呼び出します。 以下のように反復可能なPlateRecordを返します。
>>> plates = list(phenotype.parse('Plates.csv', "pm-csv"))
>>> plates
[PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'),
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'),
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ..., WellRecord['H12']'),
PlateRecord('WellRecord['A01'], WellRecord['A02'],WellRecord['A03'], ..., WellRecord['H12']')]
>>>
  • ステップ4 *-リストの最初のプレートに以下のようにアクセスします-
>>> plate = plates[0]
>>> plate
PlateRecord('WellRecord['A01'], WellRecord['A02'], WellRecord['A03'], ...,
WellRecord['H12']')
>>>
  • ステップ5 *-前に説明したように、プレートにはそれぞれ12個のアイテムを持つ8つの行が含まれています。 WellRecordは以下に指定されているように2つの方法でアクセスすることができます-
>>> well = plate["A04"]
>>> well = plate[0, 4]
>>> well WellRecord('(0.0, 0.0), (0.25, 0.0), (0.5, 0.0), (0.75, 0.0),
   (1.0, 0.0), ..., (71.75, 388.0)')
>>>
  • ステップ6 *-各ウェルには異なる時点で一連の測定値があり、以下で指定するforループを使用してアクセスできます-
>>> for v1, v2 in well:
... print(v1, v2)
...
0.0 0.0
0.25 0.0
0.5 0.0
0.75 0.0
1.0 0.0
...
71.25 388.0
71.5 388.0
71.75 388.0
>>>

補間

内挿により、データをより詳細に分析できます。 Biopythonは、WellRecordデータを補間して、中間時点の情報を取得するメソッドを提供します。 構文はリストのインデックス付けに似ているため、簡単に学習できます。

20.1時間でデータを取得するには、以下に指定されているように、単にインデックス値として渡します-

>>> well[20.10]
69.40000000000003
>>>

開始時刻と終了時刻を渡すだけでなく、以下に指定することができます-

>>> well[20:30]
[67.0, 84.0, 102.0, 119.0, 135.0, 147.0, 158.0, 168.0, 179.0, 186.0]
>>>

上記のコマンドは、1時間間隔で20時間から30時間のデータを補間します。 デフォルトでは、間隔は1時間であり、任意の値に変更できます。 たとえば、次のように15分(0.25時間)間隔を指定します-

>>> well[20:21:0.25]
[67.0, 73.0, 75.0, 81.0]
>>>

分析および抽出

Biopythonは、Gompertz、Logistic、およびRichardsシグモイド関数を使用してWellRecordデータを分析するのに適したメソッドを提供します。 既定では、fitメソッドはGompertz関数を使用します。 タスクを完了するには、WellRecordオブジェクトのfitメソッドを呼び出す必要があります。 コーディングは次のとおりです-

>>> well.fit()
Traceback (most recent call last):
...
Bio.MissingPythonDependencyError: Install scipy to extract curve parameters.
>>> well.model
>>> getattr(well, 'min') 0.0
>>> getattr(well, 'max') 388.0
>>> getattr(well, 'average_height')
205.42708333333334
>>>

Biopythonは高度な分析を行うためにscipyモジュールに依存しています。 scipyモジュールを使用せずに、min、max、average_heightの詳細を計算します。