В MATLAB можно легко получить вектор из элементов матрицы в колонке главного порядка, используя (:) оператор следующим образом ...В MATLAB, почему я не могу составить транспонирование и двоеточие?
EDU>> A
A =
1 2
3 4
5 6
EDU>> A(:)
ans =
1
3
5
2
4
6
Однако, я хотел бы получить вектор элементов в основном порядке. Поэтому я решил, что я перенесу матрицу перед использованием (:). Но я получаю эту ошибку ...
EDU>> A'(:)
A'(:)
|
Error: Unbalanced or unexpected parenthesis or bracket.
Почему не 'и (:) составляют здесь? Я могу сделать это за 2 шага, но я предпочел бы быть более кратким и избегать дополнительной переменной.
EDU>> B = A'
B =
1 3 5
2 4 6
EDU>> B(:)
ans =
1
2
3
4
5
6
Почему я не могу сделать это за 1 шаг, составив 'и (:)? Каков правильный способ сделать это?
Спасибо, ~ Патрон
Это в основном дублирует [этот вопрос] (http://stackoverflow.com/q/2724020/52738). Кроме того, [этот связанный вопрос] (http://stackoverflow.com/q/3627107/52738) далее описывает, как оператор индексирования '()' не может выполнять определенные операции, если только вы не включите его в вызов функции. – gnovice
Спасибо, мой главный вопрос был о втором вопросе относительно оператора индексирования. Интересно, что Октав, похоже, не страдает от этой проблемы. – Chuck