プログラムを1行ずつ分解しようとしています。Y
はデータのマトリックスですが、正確に何をするかについての具体的なデータは見つかりません.shape[0]
。
for i in range(Y.shape[0]):
if Y[i] == -1:
このプログラムは、numpy、scipy、matplotlib.pyplot、および cvxopt を使用します。
プログラムを1行ずつ分解しようとしています。Y
はデータのマトリックスですが、正確に何をするかについての具体的なデータは見つかりません.shape[0]
。
for i in range(Y.shape[0]):
if Y[i] == -1:
このプログラムは、numpy、scipy、matplotlib.pyplot、および cvxopt を使用します。
shape
numpy 配列の属性は、配列の次元を返します。行と列Y
がある場合、は です。そうです。n
m
Y.shape
(n,m)
Y.shape[0]
n
In [46]: Y = np.arange(12).reshape(3,4)
In [47]: Y
Out[47]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
In [48]: Y.shape
Out[48]: (3, 4)
In [49]: Y.shape[0]
Out[49]: 3
shape は、配列の次元を与えるタプルです。
>>> c = arange(20).reshape(5,4)
>>> c
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15],
[16, 17, 18, 19]])
c.shape[0]
5
行数を与える
c.shape[1]
4
列数を与える
shape
配列の次元数を示すタプルです。したがって、あなたの場合、のインデックス値Y.shape[0]
は 0 であるため、配列の最初の次元に沿って作業しています。
http://www.scipy.org/Tentative_NumPy_Tutorial#head-62ef2d3c0a5b4b7d6fdc48e4a60fe48b1ffe5006から
An array has a shape given by the number of elements along each axis:
>>> a = floor(10*random.random((3,4)))
>>> a
array([[ 7., 5., 9., 3.],
[ 7., 2., 7., 8.],
[ 6., 8., 3., 2.]])
>>> a.shape
(3, 4)
http://www.scipy.org/Numpy_Example_List#shapeにはさらにいくつかの例があります。