始める無料で始める

ブールインデックスによる配列のフィルタリング

配列はブールインデックスでも参照できます。保持したい位置に対応する値を True にしたブール配列を作ることで、配列をフィルタリングできます。これは、ある配列の値に基づいて別の配列を絞り込むときに特に便利です。

この演習では、1回の出産で通常は1匹だけ産む動物と、複数産む動物で出生体重がどう異なるかを調べます。ワークスペースには NumPy パッケージ(np)と、2つの NumPy 配列が読み込まれています。

  • litter_size は、1200種以上の動物それぞれの平均出産数(1回の出産あたりの子の数)です。
  • birth_weight は、各動物に対応する平均出生体重(グラム)です。

この演習はコースの一部です

MATLABユーザーのためのPython

コースを見る

演習の手順

  • それぞれ、通常は1匹のみを産む動物と、1匹より多く産む動物を表すブール配列 mono_birthsmulti_births を作成します。
  • 単産の動物と多産の動物の出生体重をそれぞれ含む配列 mono_birth_weightmulti_birth_weight を作成します。
  • 通常は1匹のみを産む動物と、1匹より多く産む動物の平均出生体重を出力して確認します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create Boolean arrays that indicate mono births and multi births
mono_births = litter_size ____ 1.0
multi_births = ____

# Create two arrays of birth weights for mono and multi births
mono_birth_weight = birth_weight[____]
multi_birth_weight = ____

# Calculate the mean birth weight for mono birth and multi birth animals
print(np.____(mono_birth_weight))
print(np.____(____))
コードを編集して実行