行列から条件を満たす要素番号を探す

numpyを使って、行列から条件を満たす要素番号を探す方法を記述します。

インポートするパッケージはnumpyです。

20行×3列のint型乱数行列を作成し、行列の各列から50を超える要素を where() を使って探してみます。

実行すると、条件を満たす要素番号の配列が返ってきます。該当する条件が見つからない場合は空の配列が返ってきます。

次にwhere() を応用したデータ渡しの方法を説明します。

下のコードは、20行×3列のint型乱数行列を作成し、グラフに表示するコードです。

3列目の要素が50を超える要素を赤色で表示し、50以下の要素は緑色で表示しています。グラフへのデータ渡しにwhere() を使っています。

グラフをインタラクティブにする為、ipymplというパッケージのインストールが必要です。

$ pip install ipympl

表示されるグラフの角度をマウスで調整して確認すると、Z=50 を境に点の色が赤色に変わっている事が確認できます。

PYTHON 条件によるグラフの色分け