【Numpy】Python NumPy基礎編(配列:作成・リストから配列(逆も))
こんにちは
今日はNumPyの基本的な使用方法について話していきたいと思います!
配列:作成
- 連番配列を作成
- 行列配列を作成
- 同じ値の配列を作成
配列作成
まずは配列の作成です。配列の作成は様々な目的があると思います。
今回は、
- ベクトル・n×m行列の作成
- 同じ値の配列作成ーすべて0・すべて任意の値・すべてnan
を紹介します。
np.arange()
np.arange()では連番のベクトルが作成できます。
np.arange(配列のサイズ)
もしくは
np.arange(開始の数字, 終了の数字, 間隔)
で表されます。
np.arange(9)
>>>array([0, 1, 2, 3, 4, 5, 6, 7, 8])
np.arange(0, 10, 2)
>>>array([0, 2, 4, 6, 8])
np.arange()で行列を作成したい場合は、後ろに.reshape(n×m)をつけ足します。
np.arange(9).reshape(3,3)
>>>array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
np.zeros_like()とnp.zeros()
np.zeros_like()とnp.zeros()はどちらとも0の配列を返しますが、
前者は元の配列を0に変えるもの、後者は0の配列を新しく作るものです
x = np.arange(0, 10, 2)
np.zeros_like(x)
>>>[0 0 0 0 0]
print(np.zeros(5))
print(np.zeros((2,5)))
>>>[0. 0. 0. 0. 0.]
>>>[[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]]
※行列はかっこを2つ付けることに注意してください。
np.full_like()
np.full_like()では任意の数字の配列を作成することが可能です。
任意の数字を第2引数に渡す
np.full_like(x, 5)
>>>array([5, 5, 5, 5, 5])
nanにしたい場合は必ずdtype=np.doubleに指定
print(np.full_like(v, np.nan))
print(np.full_like(v, np.nan, dtype=np.double)) # dtypeが必要
>>>[-2147483648 -2147483648 -2147483648 -2147483648 -2147483648]
>>>[nan nan nan nan nan]
配列(array)⇄リスト(list)
配列とリストは混同しやすいです。リストと同じように配列を作業しようとするとエラーが出たりするため、それぞれの型変更の方法を覚えておくと良いでしょう
a_list = [0,1,2,3,4,5]
x = np.arange(0, 10, 2)
リスト⇒配列「np.array()」
np.array(a_list)
>>>array([0, 1, 2, 3, 4, 5])
配列⇒リスト「np.tolist()」
x.tolist()
>>>[0, 2, 4, 6, 8]
それでは🌏
最終更新日
2021/01/01