Что делает .shape [] в "for я in range (Y.shape [0])"?
Я пытаюсь разбить программу по строкам. Y
- это матрица данных, но я не могу найти конкретных данных о том, что именно делает .shape[0]
.
for i in range(Y.shape[0]):
if Y[i] == -1:
Эта программа использует numpy, scipy, matplotlib.pyplot и cvxopt.
Ответы
Ответ 1
Атрибут 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
Ответ 2
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
Дает количество столбцов
Ответ 3
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 имеет еще несколько
примеры.
Ответ 4
В Python shape()
используется в pandas, чтобы указать число строк/столбцов:
Количество строк задается:
train = pd.read_csv('fine_name') //load the data
train.shape[0]
Число столбцов указано
train.shape[1]
Ответ 5
Предположим, что в python вы загрузили данные в некоторый переменный поезд:
train = pandas.read_csv('file_name')
>>> train
train([[ 1., 2., 3.],
[ 5., 1., 2.]],)
Я хочу проверить, каковы размеры "имя_файла". Я сохранил файл в поезде
>>>train.shape
(2,3)
>>>train.shape[0] # will display number of rows
2
>>>train.shape[1] # will display number of columns
3