HOWTO · NumPy

NumPy logspace()関数

numpy.linspace()関数は、指定された制限内で均等に分離された数値を取得するために使用されますが、numpy.logspace()関数は、Python で指定された範囲内で均等に分離された数値の対数を取得するために使用されます。

このページの内容

このチュートリアルでは、NumPy の linspace() および logspace() 関数について説明します。

numpy.linspace() 関数と numpy.logspace() 関数の違い

numpy.linspace() 関数は、指定された制限内で均等に分離された数値を取得するために使用されます。numpy.linspace(l, u, n) 関数は、下限 l、上限 u、および入力パラメーターとして n を返す値の数を取り、数値の n 数を返します上限と下限の範囲内の値は、互いに均等に分離されています。

一方、numpy.logspace() 関数は、指定された制限内で均等に分離された数値の対数を取得するために使用されます。numpy.logspace(l, u, n) 関数は、下限 l、上限 u、および入力パラメーターとして n を返す値の数を取り、n の数を返します。上限と下限内の対数値は、互いに均等に分離されています。

次のコード例は、Python での numpy.linspace() 関数と numpy.logspace() 関数の動作の基本的な違いを示しています。

import numpy as np

linespace = np.linspace(0, 1, 10)
logspace = np.logspace(0, 1, 10)

print(linespace)
print(logspace)

出力:

[0.         0.11111111 0.22222222 0.33333333 0.44444444 0.55555556
 0.66666667 0.77777778 0.88888889 1.        ]
[ 1.          1.29154967  1.66810054  2.15443469  2.7825594   3.59381366
  4.64158883  5.9948425   7.74263683 10.        ]

NumPy の linspace() 関数と logspace() 関数を使用して、0 と 1 の間で 10 個の均等に分離された数値と 10 個の均等に分離された対数値を計算しました。np.linspace() 関数の結果は linespace に格納されますが、np.logspace() 関数の結果は logspace 内に格納されます。linespace には、0、1.1、2.2 などのように 0 と 1 の間で均等に分離された数値が含まれます。logspace には、1 の対数、1.29 の対数、0.11 の対数など、これらの均等に分離された数値の対数が含まれます。