Pythonのnumpyモジュール学習
31863 ワード
Pythonのnumpyモジュール学習
Windowsシステム環境に基づいてnumpyモジュールを学習し、テストします. Windows 10 PyCharm 2018.3.5 for Windows (exe) python 3.6.8 Windows x86 executable installer
1.numpy初期化配列と行列 numpy空の配列 を初期化 numpyリストを用いて配列 を初期化する numpyリストを用いてマトリクス を初期化する numpy生成要素値がすべて0の1次元配列 numpy生成要素値がすべて1の一次元配列 numpy接合
2.numpyの出力 numpy出力ある行 numpy出力ある列
3.numpyはarrayの要素のindexを返します. numpyはargwhere()関数を用いて を実現する. numpyはwhere()関数を用いて を実現する.
4.numpyマトリクススタックを実現 numpyはnpを利用する.hstack((a,b))水平スタック を実現 numpyはnpを利用する.vstack((a,b))垂直スタック を実現
5.numpyベクトルの各要素の出現回数をCounterで統計する
6.numpyによる行列の演算要素乗算 マトリックス乗算 求逆行列 回転行列 を求める行列を求める行列式 行列の特徴値と特徴ベクトル を求める線形方程式のグループ を求めます
Windowsシステム環境に基づいてnumpyモジュールを学習し、テストします.
1.numpy初期化配列と行列
import numpy as np
a = np.array([])
print(a.size) # size = 0
b = np.array([], dtype=int)
import numpy as np
a = np.array([1,2,3]) # 3×1
print(np.shape(a)) # np.shape(a)=(3,)
print(a.size) # size =3
import numpy as np
a = np.array([[1,2,3],[2,3,4]]) # 2×3
print(np.shape(a)) # np.shape(a)=(2,3)
print(a.size) # size =6
import numpy as np
a = np.zeros(6) # 6 , 0
print(np.shape(a)) # np.shape(a)=(6,)
print(a.size) # size =6
import numpy as np
a = np.ones(6) # 6 , 1
print(np.shape(a)) # np.shape(a)=(6,)
print(a.size) # size =6
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
a = np.append(a, b) # a = [1, 2, 3, 4, 5, 6]
2.numpyの出力
import numpy as np
data=np.arange(9).reshape(3,3)
print(data[0]) #
import numpy as np
data=np.arange(9).reshape(3,3)
print(data[:, 0]) #
3.numpyはarrayの要素のindexを返します.
import numpy as np
data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 1]])
target = 1
target_index = np.argwhere(data == target)
print(target_index) #
print(np.shape(target_index)) # np.shape(target_index)=(2,2)
# data array, Series
import numpy as np
data = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
index1 = np.where(data > 3)
print(index1[0]) # [3 4 5 6 7 8]
index2 = np.where((data > 3) & (data < 7))
print(index2[0]) # [3 4 5]
index3 = np.where((data > 3) & (data < 7), 1, 0)
print(index3) # [0 0 0 1 1 1 0 0 0]
4.numpyマトリクススタックを実現
import numpy as np
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
b = np.array([[10,11,12],[14,15,16],[17,18,19]])
# , ( )
c = np.hstack((a,b))
print(c)
#
# [[ 1 2 3 10 11 12]
# [ 4 5 6 14 15 16]
# [ 7 8 9 17 18 19]]
import numpy as np
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
b = np.array([[10,11,12],[14,15,16],[17,18,19]])
# , ( )
c = np.vstack((a,b))
print(c)
#
# [[ 1 2 3]
# [ 4 5 6]
# [ 7 8 9]
# [10 11 12]
# [14 15 16]
# [17 18 19]]
5.numpyベクトルの各要素の出現回数をCounterで統計する
from collections import Counter
import numpy
l = np.array([1, 1, 2, 3, 3, 3])
count = Counter(l) # :
count_dict = dict(count) # :
print(count_dict)
6.numpyによる行列の演算
import numpy as np
l = np.array([[1,2], [3,4]])
print(np.multiply(a,b))
# 1 4
# 9 16
# np.dot(a,b) np.matmul(a,b) a.dot(b)
import numpy as np
l = np.array([[1,2], [3,4]])
print(l)
print(np.dot(a, a))
# 7 10
# 15 22
import numpy as np
from numpy.linalg import *
l = np.array([[1,2], [3,4]])
print(l)
print(inv(l))
import numpy as np
from numpy.linalg import *
l = np.array([[1,2], [3,4]])
print(l)
print(l.transpose())
import numpy as np
from numpy.linalg import *
l = np.array([[1,2], [3,4]])
print(l)
print(det(l))
import numpy as np
from numpy.linalg import *
l = np.array([[1,2], [3,4]])
print(l)
print(eig(l))
import numpy as np
from numpy.linalg import *
l = np.array([[1,2], [3,4]])
y = np.array([[6],[8]])
print(l)
print(solve(l,y))
# 1X+2Y=6
# 3X+4Y=8