NumPyのユニバーサル関数以外の主な関数

ユニバーサル関数以外の主な関数

主なユニバーサル関数については、主なユニバーサル関数を参照ください。

行列の関数
名前 意味
dot ベクトルの内積(行列の場合は積)
eye 単位行列
linalg.det 行列式
linalg.eig 固有値の配列と固有ベクトルの配列
linalg.inv 逆行列
linalg.matrix_rank 行列のランク(階数)
linalg.norm 行列ノルム(ベクトルの場合は長さ)
linalg.solve 連立一次方程式を解きます
matmul 行列の積(演算子 @ と同じ)(ベクトルの場合は内積)
full 要素が全て同じ値の行列
T 転置行列(プロパティ)
transpose 転置行列
zeros 零行列

行列のランク行列式行列ノルムも参照ください。

下表の関数は、axisオプションで計算する範囲を指定できます(一部除きます)。

その他の関数
名前 意味
all 全てTrueか
allclose 全て近いか
amax max と同じ
amin min と同じ
any いずれかTrueか
argmax 最大値をとるインデックス(nanがあればnanを選択)
argmin 最小値をとるインデックス(nanがあればnanを選択)
argpartition 指定順位で分割時のインデックス(nanがあれば最後)
argsort ソートしたときのインデックス(nanがあれば最後)
argwhere whereを転置したもの
corrcoef 相関係数を要素に持つ行列
cumprod 累積積(nanが出てきたらnanに)
cumproduct cumprod と同じ
cumsum 累積和(nanが出てきたらnanに)
intersect1d 積集合(交わり、共通部分)
max 最大(nanがあればnanを選択)
mean 平均(nanがあればnan)
median 中央値(nanがあればnan)
min 最小(nanがあればnanを選択)
nanargmax 最大値をとるインデックス(nan以外を選択)
nanargmin 最小値をとるインデックス(nan以外を選択)
nancumprod 累積積(nanは1扱い)
nancumsum 累積和(nanは0扱い)
nanmax 最大(nan以外を選択 ※)
nanmean 平均(nanを除く)
nanmedian 中央値(nanを除く)
nanmin 最小(nan以外を選択 ※)
nanpercentile パーセンタイル(nanを除く)
nanprod 積(nanを除く)
nanstd 標準偏差(nanを除く)
nansum 和(nanを除く)
nanvar 分散(nanを除く)
nan_to_num nanを0に置換え
nonzero 次元ごとの「非ゼロ要素のインデックスの配列」のタプル
partition 指定順位で分割(nanがあれば最後)
percentile パーセンタイル(nanがあればnan)
prod 積(nanがあればnan)
setdiff1d 差集合(第1引数に含まれていて第2引数に含まれない)
setxor1d 対称差(片方にしか含まれない)
sort ソート(nanがあれば最後)
std 標準偏差(nanがあればnan)
sum 和(nanがあればnan)
union1d 和集合
unique ユニーク集合
var 分散(nanがあればnan)
where 次元ごとの「要素が条件合致するインデックスの配列」のタプル(または、条件を満たす方を選択)

※ 全て nan の時は、nan を返します。

補足

allmaxのように、いくつかの関数では、numpy.関数名多次元配列.関数名の2通りの方法が用意されています。

たとえば、numpy.all(多次元配列)は、多次元配列.all()と書くこともできます。

全ての関数ができるわけではありません。 よく使われる関数が、多次元配列のメソッドでも使えるようになっています。

  • 基本的に同じ機能ですが、sortpartitionのように異なることもあります。
    • numpy.関数名: 新しい多次元配列を作成
    • 多次元配列.関数名: 元の多次元配列を変更
  • 多次元配列.関数名は、多次元配列(numpy.ndarray)からしか呼べませんが、numpy.関数名はリストなどを引数に取ることもできます。
  • numpy.関数名しか用意されていない関数がいくつかあります。
  • どちらも使える場合はどちらを使っても大丈夫ですが、コンテンツに合わせるとわかりやすいでしょう。

さらに詳しくは、Routinesを参照ください。