Matlab的bsxfun函数
2016-04-06 11:25
232 查看
bsxfun
Matlab 中的定义:Apply element-by-element binary operation to two arrays with singleton expansion enabled
举例说明:
1)两个矩阵相加
a=⎡⎣⎢567⎤⎦⎥\begin{bmatrix}
5 \\
6 \\
7\\
\end{bmatrix}b=[123]\begin{bmatrix}
1 & 2& 3\\
\end{bmatrix}
c=a*b=567101214151821
\begin{matrix}
5 & 10 &15\\
6& 12 & 18\\
7 & 14& 21 \\
\end{matrix}
利用c=bsxfun(@times,a,b)实现相同的功能
2)两个矩阵相加
因为a,b的尺寸不同,因此bsxfun将a,b先改变矩阵格式b=⎡⎣⎢111222333⎤⎦⎥a=⎡⎣⎢567567567⎤⎦⎥b= \begin{bmatrix}
1 & 2 &3\\
1 & 2 &3\\
1 & 2 &3\\
\end{bmatrix}
a=\begin{bmatrix}
5 & 5&5\\
6 &6 &6\\
7 & 7 &7\\\end{bmatrix}
然后实现
c=a+b=⎡⎣⎢6787898910⎤⎦⎥\begin{bmatrix}
6 & 7&8\\
7&8 &9\\
8 & 9 &10\\\end{bmatrix}
C=bsxfun(fun,A,B),其中fun有以下:
1)@plus 相加
2)@minus 相减
3)@times 相乘
…..
相关文章推荐
- MATLAB中的分类器
- GPU&VS2012&CUDA&matlab&Arrayfire杂记(三)——cuda
- GPU&VS2012&CUDA&matlab&Arrayfire杂记(二)——matlab
- restoredefaultpath matlab
- GPU&VS2012&CUDA&matlab&Arrayfire杂记(一)——序
- 【matlab】将matlab中数据输出保存为txt或dat格式
- 导出CCS3.3数据及使用matlab处理的方法
- Matlab将mat格式数据保存为txt格式
- matlab自带各种分类器的使用示例
- 用蒙特卡罗方法计算区域面积以matlab实现
- matlab编译为exe的一些问题
- MATLAB入门篇(一)——常用命令、路径管理、帮助
- matlab 单双精度引发的血案
- 一文搞懂Matlab画图那些事(上篇)
- 【matlab】:matlab关于原图修改及画图的相关问题
- matlab下kmeans及pam算法对球型数据分类练习
- matlab对视频进行滤波去噪
- matlab对图像进行直方图均衡化
- matlab给图像加简单噪声
- matlab 扩大虚拟内存