
1
1
章
エレガントな
NumPy
:
科学
Python
の基礎
NumPy はどこにでもいる。私たちを取り巻いている。この瞬間にも、
この部屋の中にも。窓の外を眺めても、テレビをつけても目に入る。
職場でも、教会でも、納税する時にも、存在を感じるのだ。
―
モーフィアス『マトリックス』
本章では
SciPy
の統計関数を取り上げ、特に、
NumPy
配列の学習に焦点を当てて話を進めてい
きます。
NumPy
配列は、
Python
で行う数値科学計算ほぼすべての基礎となるデータ構造です。
ここでは、
NumPy
配列の演算を使うことで、数値データを処理するコードが簡潔で効率的になる
様子を見ていきます。
例として、がんゲノムアトラス(
The Cancer Genome Atlas, TCGA
)の遺伝子発現データを用
い、皮膚がん患者の死亡率を予測します。本章と次章では、一貫してこの課題に取り組みながら、
途中で主要な
SciPy
の概念を学んでいきます。死亡率予測の前段階として、
RPKM
正規化という
手法を用いて、発現データを正規化する必要があります。正規化により、異なる標本や遺伝子間の
計数値の比較が可能になるのです(「遺伝子発現」の意味はこの後すぐ説明します)。
まずは、コード片を示して読者のみなさんの興味を引き、本章で学ぶ考え方を紹介していきま
す。どの章でも、冒頭で、
SciPy
エコシステムの特定の関数と、そのエレガントさと強力さが光る
コード見本を紹介します。本章では、
NumPy
のベクトル化とブロードキャスティングのルールに
着目します。これにより、データ配列の操作や動作確認の効率がとてもよくなります。 ...