NumPyを使うと簡単に二次元配列を作ることができます。ここでは、NumPyのzeros関数を使って要素が全てゼロの配列を作っています。
import numpy as np
array2d = np.zeros((4,10))
print array2d
zeros関数の第一引数に(4,10)と入れているので、
[[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]]
というように4*10の配列になります。”0.”となっているのは、浮動小数点型となっていることを反映しています。
(4,10,10)とすると41010の3次元配列が作れますし、さらに4次以上の多次元配列も作ることができます。
要素を1で初期化したい場合にはones関数を使います。
import numpy as np
array2d = np.ones((4,10))
print array2d
また、浮動小数点型でなく、任意の値で初期化したい場合もあると思います。そのような時には次のようにzerosで初期化してから値を足すと良いでしょう。または、onesで初期化してから値を掛け算しても良いでしょう。たとえば、全て4にしたい時には、次のようにします。
import numpy as np
array2d = np.zeros((4,10))+4
print array2d
[[ 4. 4. 4. 4. 4. 4. 4. 4. 4. 4.]
[ 4. 4. 4. 4. 4. 4. 4. 4. 4. 4.]
[ 4. 4. 4. 4. 4. 4. 4. 4. 4. 4.]
[ 4. 4. 4. 4. 4. 4. 4. 4. 4. 4.]]
というようになりました。こちらも、”4.”となっているのは、浮動小数点型となっていることを反映しています。
NumPyのzeros関数、ones関数は型を指定して配列を作成することができます。その場合は、第二引数に指定します。整数としたいならnp.int、もっと細かく符号なし8ビット整数(unsigned 8bit integer)としたいならnp.uint8というように指定します。浮動小数点型を明示する時も同様に、np.floatとします。
import numpy as np
array2d = np.ones((4,10),np.int)*4
print array2d
[[4 4 4 4 4 4 4 4 4 4]
[4 4 4 4 4 4 4 4 4 4]
[4 4 4 4 4 4 4 4 4 4]
[4 4 4 4 4 4 4 4 4 4]]
このように、すべて整数として保持されることになります。