Python では、 によって生成されるオブジェクト[]
は一般にlist
ではなくと呼ばれることに注意してくださいarray
。それを念頭に置いて、あなたの本当の質問は「4つlist
の独立したpythonを2次元numpy
配列に変換するにはどうすればよいですか?」だと思います。
list
答えは、配列内で s をどのように配置するかによって異なります。各リストが行を表すと仮定すると、次のようにすることができます。
>>> x = range(0, 4)
>>> y = range(4, 8)
>>> ov = range(8, 12)
>>> aa = range(12, 16)
>>> numpy.array([x, y, ov, aa])
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
または、各リストが列を表す場合は、次のようにすることができます。
>>> numpy.array(zip(x, y, ov, aa))
array([[ 0, 4, 8, 12],
[ 1, 5, 9, 13],
[ 2, 6, 10, 14],
[ 3, 7, 11, 15]])
array
次に、によって生成されたのと同じように、ブール インデックスを使用できますgenfromtxt
。
>>> a = numpy.array(zip(x, y, ov, aa))
>>> a[a == 1]
array([ 1, 5, 9, 13, 3, 7, 11, 15])
x
、y
、ov
、およびaa
を組み合わせて配列にする他の方法を探しているかもしれません。その場合、リストの内容と目的の出力の形状を指定する必要があります。