(这里这列举笔者不熟悉的,容易忘的数组运算)
1、数组的转置
>> a=[1 2 3 4 5 6 7]
a =
1 2 3 4 5 6 7
>> b=a'
b =
1
2
3
4
5
6
7
2、对数组的赋值
>> a([1 4])=[0 0]
a =
0 2 3 0 5 6 7
3、注意用“冒号”产生数组和用“linspace(a,b,n)”产生数组的区别
linspace(1,2,5)
ans =
1.0000 1.2500 1.5000 1.7500 2.0000
>> 1:3:8
ans =
1 4 7
4、数组的乘除运算:通过格式“.*”,"./"可实现数组的乘除运算。要求运算规则要求数组A和B的维数相同。
乘法:数组A和B的维数相同,运算为数组对应元素相乘,计算结果与A和B是相同维数的数组。
>> a=[1 2 3 4 5]
a =
1 2 3 4 5
>> b=[2 2 2 2 2 ]
b =
2 2 2 2 2
>> a.*b
ans =
2 4 6 8 10
除法:数组A和B的维数相同,运算为数组对应元素相除,计算结果与A和B是相同维数的数组。
>> a./b
ans =
0.5000 1.0000 1.5000 2.0000 2.5000
左除和右除的关系:A./B=B.\A(其中A是被除数,B是除数)
5、数组的乘法
>> a
a =
1 2 3 4 5
>> b
b =
2 2 2 2 2
>> a.^b
ans =
1 4 9 16 25
6、可以通过dot()来实现数组的点积运算
但是运算规则要求数组A和B的维数相同,其调用格式如下
A=[1 5 6 8 9 6]
扫描二维码关注公众号,回复:
2171412 查看本文章
B=[9 5 6 2 4 0]
>> A=[1 5 6 8 9 6]
A =
1 5 6 8 9 6
>> B=[ 9 5 6 2 4 0]
B =
9 5 6 2 4 0
>> C=dot(A,B)%数组的点积
C =
122
>> D=sum(A.*B)%数组元素的乘积之和
D =
122
7、数组的关系运算
A=[1 5 6 8 9 6]
B=[9 5 6 2 4 0]
A<B%A与B就是上一步的A和B
ans =
1 0 0 0 0 0
8、数组的逻辑运算(且& 或| 非~)
A=[1 5 6 8 9 6]
B=[9 5 6 2 4 0]
>> A&B % A和B都是上边的A和B
ans =
1 1 1 1 1 0
>> A|B
ans =
1 1 1 1 1 1
>> ~B
ans =
0 0 0 0 0 1