Pythonを一から勉強してデータ分析できるようになる

~ Pythonとデータ分析のお勉強の記録 ~

NumPyの基本:使い方(2) 配列を作る

 

[Take1] 空の配列を作る

 

【書式】

np.empty(引数)
引数
0:空の配列を作る
(n,m):(n,m)の形状の配列を作る

 

【コード】

import numpy as np
arr1 = np.empty(0)
arr2 = np.empty*1
 
print(arr1)
print(arr1.shape)
print("\n")
print(arr2)
print(arr2.shape)

 

【結果】

[]
(0,)
 
 
[[4.9e-324 9.9e-324 1.5e-323]
[2.0e-323 2.5e-323 3.0e-323]]
(2, 3)

 

 

[Take2] list型との違い(足し算)

リスト

横に連結

配列

要素毎に足し算

 

【書式】

 

【コード】

import numpy as np
 
listA = [1,2,3]
listB = [4,5,6]
 
listC=listA+listB
print("listC",listC)
 
arrA = np.array([1,2,3])
arrB = np.array([4,5,6])
 
arrC=arrA+arrB
print("arrC",arrC)
print(type(arrC))
 
# 配列をリスト型に変換する
arrC=list(arrC)
print("arr→list",arrC)
print(type(arrC))

 

【結果】

listC [1, 2, 3, 4, 5, 6]
arrC [5 7 9]
arrCデータ型 <class 'numpy.ndarray'>
arr→list [5, 7, 9]
arr→listのデータ型 <class 'list'>

 

 

[Take3] 配列のデータ型をリスト型に変換する

 

【書式】

list(配列)

 

【コード】

import numpy as np
 
arrA = np.array([[1,2,3],[4,5,6]])
print(arrA)
print(type(arrA))
print(arrA.shape)
 
print("\n")
 
# リスト型に変換
listA=list(arrA)
print(listA)
print(type(listA))

 

【結果】

[[1 2 3]
[4 5 6]]
<class 'numpy.ndarray'>
(2, 3)
 
 
[array([1, 2, 3]), array([4, 5, 6])]
<class 'list'>

 

 

[Take4] 要素数を指定して配列を作る arange() 関数

 

【書式】

numpy.arange(数値1, 数値2, 数値3)
各引数の意味は次の通り

 

【コード】

import numpy as np
 
# 1~10まで、間隔2
print(np.arange(1,10,2))
 
# 1~10まで、間隔1
print(np.arange(1,10))
 
# 0~10まで、間隔1
print(np.arange(10))

 

【結果】

[1 3 5 7 9]
[1 2 3 4 5 6 7 8 9]
[0 1 2 3 4 5 6 7 8 9]

 

※「終了値」は作成された配列に含まれないことに注意。

 

[Take5] 要素数を指定して配列を作る linspace() 関数

 

【書式】

numpy.linspace(開始値,終了値,要素数)

 

【コード】

import numpy as np
 
# 1~10まで、要素数10
print(np.linspace(1,10,10))

 

【結果】

[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]

 

 

[Take6] 0だけで構成された配列を作る zeros() 関数

 

【書式】

np.zeros(配列の形状)

 

【コード】

# ゼロが7つの配列
print(np.zeros(7))
 
print("\n")
 
# ゼロが(2,3)の行列
print(np.zeros*2
 
print("\n")
 
# 1が(2,3)の行列
print(np.ones*3

 

【結果】

[[2 2 2 2 2]
[2 2 2 2 2]
[2 2 2 2 2]
[2 2 2 2 2]
[2 2 2 2 2]]

 

 

[Take9] 単位行列を作る eye() 関数

 

【書式】

np.eye(数値)

 

【コード】

print(np.eye(4))

 

【結果】

[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 0.]
[0. 0. 0. 1.]]

 

*1:2,3

*2:2,3)))

 

【結果】

[0. 0. 0. 0. 0. 0. 0.]
 
 
[[0. 0. 0.]
[0. 0. 0.]]

 

 

[Take7] 1だけで構成された配列を作る ones() 関数

 

【書式】

np.ones(配列の形状)

 

【コード】

# 1が7つの配列
print(np.ones(7

*3:2,3)))

 

【結果】

[1. 1. 1. 1. 1. 1. 1.]
 
 
[[1. 1. 1.]
[1. 1. 1.]]

 

 

[Take8] 任意の要素で構成された配列を作る full() 関数

 

【書式】

np.full(配列の形状, 任意の数値)

 

【コード】

print(np.full((5,5),2