LoginSignup
2
1

More than 5 years have passed since last update.

NumPyに入門 その2

Last updated at Posted at 2019-04-07

配列の初期化

arangeは連番で要素を作ります。引数が1つの場合はstop,2つの場合はstart,stopと解釈されます。
reshapeは配列の次元変換を行います。

>>> np.arange(6)
array([0, 1, 2, 3, 4, 5])

>>> np.arange(2, 6)
array([2, 3, 4, 5])

>>> np.arange(6).reshape(3,2)
array([[0, 1],
       [2, 3],
       [4, 5]])

要素の合計を求める

もし引数を指定しない場合は全ての要素を合計したスカラ値を返します。
axis=Nを指定した場合、N次元についての合計値の配列を返します。

>>> data = np.array([[1,2],[3,4],[5,6]])
>>> data.sum()
21    # <= 1+2+3+4+5+6

>>> data.sum(axis = 0)
array([ 9, 12]) # <= [1+3+5, 2+4+6]

>>> data.sum(axis = 1)
array([ 3,  7, 11]) # <= [1+2, 3+4, 5+6]

平均を求める

引数を指定しない場合はスカラ値、
axis=Nを指定した場合は配列を返します。

>>> data = np.array([[1,2],[3,4],[5,6]])
>>> data.mean()
3.5

>>> data.mean(axis = 0)
array([3., 4.]

>>> data.mean(axis = 1)
array([1.5, 3.5, 5.5])

標準偏差を求める

引数を指定しない場合はスカラ値、
axis=Nを指定した場合は配列を返します。

>>> data = np.array([[1,2],[3,4],[5,6]])
>>> data.std()
1.707825127659933

>>> data.std(axis = 0)
array([1.63299316, 1.63299316])

>>> data.std(axis = 1)
array([0.5, 0.5, 0.5])

最大値を求める

引数を指定しない場合、全ての要素の中から最大値を返します。
axisを指定した場合、その次元での最大値を配列で返します。

>>> data = np.array([[1,2],[3,4],[5,6]])
>>> np.amax(data)
6

>>> np.amax(data, axis = 0)
array([5, 6])

>>> np.amax(data, axis = 1)
array([2, 4, 6])

最小値を求める

引数を指定しない場合、全ての要素の中から最小値を返します。
axisを指定した場合、その次元での最小値を配列で返します。

>>> data = np.array([[1,2],[3,4],[5,6]])
>>> np.amin(data)
6

>>> np.amin(data, axis = 0)
array([1, 2])

>>> np.amin(data, axis = 1)
array([1, 3, 5])

動画で説明を作りました。よかったらご覧ください。
https://youtu.be/dUf7kZUJJBQ

2
1
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
2
1