Python numpy

以前、Pythonのpandasについて少し記載したと思いますが今回はnumpyについて記載していきたいと思います。

numpyはPythonで学術計算をするためのライブラリです。
基本的な計算はPythonでも可能ですが、
numpyを使用すると計算速度が高速なり複雑な計算式も簡単にしてくれるライブラリとなっています。

機械学習でもnumpyがよく使用されています。

numpyは配列を扱いN次元配列の操作可能にしています。

1次元であればベクトル、2次元であれば行列、3次元以上であればテンソルを扱うことが可能。
(数学的な部分ですね。)

numpy配列のいくつか例を下記に記載します。

では、いつものimportで使用可能にしてください。
(インストールされていない場合はインストールしてください。)
import numpy as np

▼一次元の操作
xxx = np.array([1,2,3])
print(xxx)
xxx = xxx + 1
print(xxx)

[実行結果]
[1, 2, 3]
[2, 3, 4]

▼二次元の操作
yyy = np.array([[1,2,3],[4,5,6]])
print(yyy)
yyy = yy * 2

yyy2 = np.array([[10,20,30],[40,50,60]])
print(yyy + yyy2)

[実行結果]
[[1 2 3]
[4 5 6]]

[[2 4 6]
[8 10 12]]

[[11 22 33]
[44 55 66]]

▼三次元の操作
print(np.arange(24).reshape(3, 2, 4))

[実行結果]
[[[ 0  1  2  3]
[ 4  5  6  7]]

[[ 8  9 10 11]
[12 13 14 15]]

[[16 17 18 19]
[20 21 22 23]]]

▼ソート(多次元でも可能)
sss = np.array([3,10,1,5,8])
print np.sort(sss)
print np.sort(sss)[::-1]

[実行結果]
[1 3 5 8 10]
[10 8 5 3 1]

ベーシックな一例です。
下記ページがnumpy配列の操作を色々と紹介くれていたので参照してみてください。
https://www.headboost.jp/python-numpy-array-calculations/

このnumpyやpandasもしかりやはり数学的な部分が多く、
今更Σ(シグマ)の使い方を勉強しなおしてみようかなと思った今日この頃でした。

以上、numpyについてでした。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です