试图理解MATLAB语法:我看到了
(0:3)
是一个行向量,'
(向前引用)运算符是transpose
,所以
(0:3)'
是列向量。我在一些文件中也看到了.'
,这些也产生了列向量,所以
(0:3).'
产生与(0:3)
相同的结果。
'
和.'
之间有什么区别?我没有在MATLAB文档中找到任何帮助我理解这一点的内容。
(请注意,这个问题与语法有关,主要是关于transpose
和ctranspose
之间的区别,因为如果你不知道'
是一个而{{1}另一方面,对.'
与transpose
问题的回答无助于回答ctranspose
与.
的问题。在许多MATLAB示例和教程中,'.
明确且不准确地显示为'
,当用户第一次遇到transpose
时,这一事实会导致问题。)
答案 0 :(得分:10)
实数没有区别。
对于复数,.'
将生成转置,而'
将生成complex conjugate。
>> [i -i].'
ans =
0.0000 + 1.0000i
0.0000 - 1.0000i
>> [i -i]'
ans =
0.0000 - 1.0000i
0.0000 + 1.0000i
顺便说一句,每个Matlab操作符都有一个名称,可用于阅读文档。
.'
- transpose
'
- ctranspose
虽然 有时很难在文档中找到它们。其中大多数都可以在here中找到,但您必须猜测哪个运算符是哪个。