Как узнать количество столбцов в матрице? - PullRequest
32 голосов
/ 21 октября 2011

Предположим, я указал матрицу A, как

A = [1 2 3; 4 5 6; 7 8 9]

как я могу запросить A (без использования length(A)) , чтобы узнать, что он имеет 3 столбца?

Ответы [ 3 ]

71 голосов
/ 21 октября 2011

Используйте функцию size().

>> size(A,2)

Ans =

   3

Второй аргумент определяет размер требуемого числа элементов, который будет равен 2, если вы хотите количествостолбцы.

Официальная документация.

9 голосов
/ 10 сентября 2014

Несмотря на то, что size(A,2) правильно, я считаю, что сначала гораздо проще определить

rows = @(x) size(x,1); 
cols = @(x) size(x,2);

, а затем используйте, например, так:

howManyColumns_in_A = cols(A)
howManyRows_in_A    = rows(A)

Это может показаться небольшим сохранением, но size(.., 1) и size(.., 2) должны быть одними из наиболее часто используемых функций, и они не являются оптимально читаемыми как есть.

4 голосов
/ 27 августа 2014

Когда вы хотите получить размер строки с функцией size () , можно использовать следующий код:

size(A,1)

Другое использование для него:

[height, width] = size(A)

Итак, вы можете получить 2 измерения вашей матрицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...