NumPy配列ndarrayの生成 2015/06/22
ndarrayは、np.array
を使ってPythonのリストから簡単に生成できる。
# 普通のPythonの配列
data = [[1.0, 2.0, 3.0], [11.0, 12.0, 13.0]]
# NumPyの多次元配列
npdata = np.array(data)
print(npdata)
# 出力結果
# [[ 1. 2. 3.]
# [ 11. 12. 13.]]
ndarrayをprint
で出力させるとPythonのリストと同様に []
で囲んで要素を羅列してくれる。要素の間のコンマがないのだが。多次元の場合は適当にインデントしてくれる。
np.zeros
は要素をすべて 0.0
で埋めた配列を生成してくれる。引数には配列の次元を指定する。配列の要素はすべて浮動小数点数になる。
npdata = np.zeros(3)
print(npdata)
# 出力結果
# [ 0. 0. 0.]
npdata = np.zeros((2, 3))
print(npdata)
# 出力結果
# [[ 0. 0. 0.]
# [ 0. 0. 0.]]
同じように np.ones
は 1.0
で埋めた配列になる。
npdata = np.ones(3)
print(npdata)
# 出力結果
# [ 1. 1. 1.]
npdata = np.ones((2, 3))
print(npdata)
# 出力結果
# [[ 1. 1. 1.]
# [ 1. 1. 1.]]
np.empty
は要素を初期化せずに配列を生成する。
npdata = np.empty(3)
# 結果は実行するごとに異なりうる
npdata = np.empty((2, 3))
# 結果は実行するごとに異なりうる
np.arange
は0からの連番の配列を生成する。要素の型は整数になる。
npdata = np.arange(5)
print(npdata)
# 出力結果
# [0 1 2 3 4]
print(npdata.dtype)
# 出力結果
# int64
3つの引数を渡せば、開始点、終末点、間隔を指定できる。
npdata = np.arange(0, 5, 0.1)
print(npdata)
# 出力結果
# [ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. 1.1 1.2 1.3 1.4
# 1.5 1.6 1.7 1.8 1.9 2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9
# 3. 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4. 4.1 4.2 4.3 4.4
# 4.5 4.6 4.7 4.8 4.9]
print(npdata.dtype)
# 出力結果
# float64
numpy.arange
| NumPy v1.9 Manual
http://docs.scipy.org/doc/numpy/reference/generated/numpy.arange.html