LoginSignup
7
11

More than 5 years have passed since last update.

Numpy 基本演算メモ

Posted at

Pythonの数値計算ライブラリ、Numpyでよく使うやつのメモ。だいたいnpという名前でインポートされることが多い。随時更新予定。

import numpy as np

array

行列を作る。

>>> np.array([1, 2, 3])
array([1, 2, 3])
>>> np.array([[1, 2], [3, 4]])
array([[1, 2],
       [3, 4]])

T

転置行列を作る。

>>> a = np.array([[1, 3], [2, 1]])
>>> a
array([[1, 3],
       [2, 1]])
>>> a.T
array([[1, 2],
       [3, 1]])

zeros, ones

zerosは0で、onesは1で埋められた、指定された形の行列を生成する。

>>> np.zeros(3)
array([ 0.,  0.,  0.])
>>> np.zeros([3, 3])
array([[ 0.,  0.,  0.],
       [ 0.,  0.,  0.],
       [ 0.,  0.,  0.]])
>>> np.ones(3)
array([ 1.,  1.,  1.])
>>> np.ones([3, 3])
array([[ 1.,  1.,  1.],
       [ 1.,  1.,  1.],
       [ 1.,  1.,  1.]])

eye

単位行列を作る。

>>> np.eye(3)
array([[ 1.,  0.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  0.,  1.]])

diag

対角行列を作る。

>>> np.diag([1, 2, 3])
array([[1, 0, 0],
       [0, 2, 0],
       [0, 0, 3]])

vstack, hstack

行列の合成に使われる。使い方は次の通り。

>>> a = np.array([1, 1, 1])
>>> b = np.array([2, 2, 2])
>>> np.vstack([a, b])
array([[1, 1, 1],
       [2, 2, 2]])
>>> np.hstack([a, b])
array([1, 1, 1, 2, 2, 2])

dot

内積を計算する。

>>> np.dot([1, 2, 3], [1, 2, 3])
14

cross

外積を計算する。

>>> np.cross([0, 1], [1, 0])
array(-1)

flatten

一次元配列に変更する

>>> a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
>>> a.flatten()
array([1, 2, 3, 4, 5, 6, 7, 8, 9])

random.rand

ランダムな数値の行列を生成する。

>>> np.random.rand(3)
array([ 0.37043199,  0.67058649,  0.53891633])
>>> np.random.rand(2, 3)
array([[ 0.50614319,  0.04483549,  0.39542568],
       [ 0.04853891,  0.55439793,  0.81737454]])
7
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
11