请问在matlab中f = f(:)是什么意思,f是一维数组
多谢各位了!回复 楼主 freebrother 的帖子
把现有的数组f全部赋值给f貌似这样没啥意义,要看前后的语句 我刚刚用debug运行了一下,好像就是将f转置了一下,这个语句是在matlab自带的函数中的,我不知道为什么不用f=f.' >> a=magic(3)
a =
8 1 6
3 5 7
4 9 2
>> b=a(:)
b =
8
3
4
1
5
9
6
7
2
>> a'
ans =
8 3 4
1 5 9
6 7 2
>> c=1:9
c =
1 2 3 4 5 6 7 8 9
>> d=c(:)
d =
1
2
3
4
5
6
7
8
9
>> c'
ans =
1
2
3
4
5
6
7
8
9
一个是将向量或者矩阵按列展开结果为列向量;一个是将矩阵或者向量转置,结果仍为矩阵或者向量,不改变size。
像这种东西很容易测试出来,多动手就行了:handshake
[ 本帖最后由 花如月 于 2008-11-8 11:09 编辑 ] 在自编的程序中, 常用来控制输入引数的向量用法
如:输入不管是行向量或列向量, 都可转换成行向量 问题解决,多谢大伙了:) 将f转换成列向量
页:
[1]