NumPyには、配列の要素から分散を求めるnp.var()が用意されています。このページでは、この関数の使い方と注意点について解説します。 なお、同じ分散を求めるものにメソッドのndarray.varもありますがオプション引数は全く同じなので、ここでは関数のnp.varを使って解説していきます。さらに、np.nanvarという関数もあります。通常のnp.varは、対象となる配列に欠損値nanが含まれる場合、nanを返します。しかし、np.nanvarでは欠損値nanを無視して他の要素から分散を計算します。この違いは覚えておくと良いでしょう。 それでは始めましょう。 …
NumPy
NumPyで標準偏差を求めるstd()の使い方と注意点
NumPyには、配列の要素から標準偏差を取得するためのstd関数が用意されています。標準偏差とは、データのばらつきを示す指標のことです。このページでは、この関数の使い方について解説します。 なお、同じ分散を求めるものにメソッドのndarray.stdもありますがオプション引数は全く同じなので、ここでは関数のnp.stdを使って解説していきます。さらに、np.nanstdという関数もあります。通常のnp.stdは、対象となる配列に欠損値nanが含まれる場合、nanを返します。しかし、np.nanstdでは欠損値nanを無視して他の要素から標準偏差を計算します。この違いは覚えておくと良いでしょ …
NumPyで平均値を求める3つの関数の使い方まとめ
NumPyでは配列の要素の平均値を求める方法として、meanとnanmean、averageの3つの関数が用意されています。それぞれ次のような違いがあります。 np.mean: 算術平均を求める(欠損値nanがある場合は不可)np.nanmean: 算術平均を求める(欠損値nanは無視して計算)np.average: …
NumPyのソート(並び替え)のために知っておきたい5つの方法
NumPyの配列のソートは、データ分析やデータエンジニアリングにおいて多用する操作の1つです。そこで、ここではそんな操作に役立つ5つの方法を解説します。その5つとは以下の通りです。 sort()argsort()lexsort()partition()argpartition() まずsortとargsortはしっかりと使いこなせるようになっておいましょう。そして、その2つだけでは対応できない場合に、他の3つのソート方法を検討するようにしてみてください。きっとデータ分析の効率が上がるはずです。 それでは、それぞれ見ていきましょう。 …
NumPyのargpartition()で配列の要素を再配置するインデックスを取得
NumPyのargpartiton()は、配列の要素のうち、任意の値k を基準にして、それより小さい値を左側に、それより大きい値を右側に再配置した際のインダイスを取得する関数です。"partition" は「仕切り」という意味です。つまり、配列を任意の値k …
NumPyのpartition()で配列の要素を再配置する方法
NumPyのpartiton()は、配列の要素のうち、任意の値k を基準にして、それより小さい値を左側に、それより大きい値を右側に再配置する関数です。"partition" は「仕切り」という意味です。つまり、配列を任意の値k で仕切って再配置するという意味です。 これを使うことで、例えば、配列の中の k番目に小さい値を取得するといった複雑な操作ができるようになります。あまりよく見る関数ではありませんが、確実に操作の自由度が増すので頭に入れておくと良いでしょう。 それではさっそく見ていきましょう。 …
NumPyのlexsort関数で配列を複数のソートキーで並べ替える方法
NumPyのlexsort関数は、複数のソートキー(ソートの基準)によって、配列をソートすることができる関数です。argsortと同じく戻り値はソートした要素のインダイスです。 引数に渡した配列、またはシーケンスのうち最後のキーから優先的に基準となりソートされ、同値があった場合は、最後から2つ目のキーを基準にしてソートします。1つの基準だけでは、意図した通りに配列の要素をソートできない場合に使います。 口で言うよりも実際に見た方がわかりやすいので、さっそく確認しておきましょう。なお、lexsortの前に『NumPyのargsort関数で配列をソートしたインデックスを取得する方法』を確 …
NumPy配列の作成の9つの方法
NumPyの配列の作成方法は、Python標準オブジェクトのリストに比べて、遥かに豊富に用意されており、かつ、高速に動作します。それによって、様々な科学技術計算やデータエンジニアリングが行いやすくなっています。 その中で、このページでは、よく使う配列の作成方法をすべてコンパクトにまとめています。参考にして頂ければ嬉しく思います。 …
NumPyのtan関数でタンジェント(正接)を計算する方法まとめ
NumPyのtan関数は、タンジェント(正接)の値を求めるための関数です。 タンジェント(正接)は、三角関数において角度θにおける サインθ/コサインθです。単位円(半径1の円)上において、サインθは角度θにおける円周上の接点の y座標 bであり、コサインθは接点の x座標 aですが、タンジェントθは、その接点における b/a です。タンジェントの値は 180°(π) の倍数では0 …
NumPyのcos関数でコサイン(余弦)を計算する方法まとめ
NumPyのcos関数は、コサイン(余弦)を計算する関数です。 コサインについて、よく使われる説明は次のようなものです。半径1の円(「単位円」といいます)があります。この円の中心から1本の光線を、角度θで放ちます。すると、この光線は円周上の点 (a, b) に接します。この時の x座標であるa が、角度がθの時のコサインです。コサインの値は、角度0°の時の1から角度180°(πの倍数)の時の -1 までの範囲になります。そして …