Matlab cellfun函数
Matlab中有一个数组类型,叫做Cell,Cell是一种广义数组,他的每个元素称之为一个单元,每个单元可以是任意类型数组,比如数值数组,字符串,结构体或者一个子Cell.因此每个单元可以有不同的大小.
cellfun是将一个函数运用到Cell数组中的所有元素
语法:
- [A1,…,Am] = cellfun(func,C1,…,Cn)
- [A1,…,Am] = cellfun(func,C1,…,Cn,Name,Value)
[A1,…,Am] = cellfun(func,C1,…,Cn)调用函数句柄func指定的函数,并传递Cell数组中的元素C1,…,Cn,n是传递到函数的参数个数,输出数组A1,…,Am,m为func函数输出的数量.第i次迭代对应于语法为[A1(i),…,Am(i)] = func(C1{i},…,Cn{i})。cellfun函数不能指定顺序来执行func函数。
[A1,…,Am] = cellfun(func,C1,…,Cn,Name,Value)调用函数func,附加选项通过一个或多个”Name,Value”键值对参数指定,Name可以取值”UniformOutput”或者”ErrorHandler”.
键值对参数
- ‘UniformOutput’:逻辑值如下
- true 表示对于所有输入,函数func的每一个输出都是一个标量单元数组,标量结构,或者一个总是相同类型和大小的标量值。cellfun函数将输出组合为A1,…Am的数组。每个输出数组都与单独的函数输出类型相同。
- false要求cellfun函数将输出组合成单元数组A1,…,Am。函数func的输出可以是任何大小或类型。
- ‘ErrorHandler’ 一个函数句柄,捕获所有MATLAB执行此函数遇到的错误,定义这个函数来重新抛出错误或者返回一个有效的输出.
Examples
计算Cell数组中元素的平均值.
C = {1:10, [2; 4; 6], []};averages = cellfun(@mean, C)% 返回结果averages = 5.5000 4.0000 NaN[nrows, ncols] = cellfun(@size, C)% 返回结果nrows =1 3 0ncols =10 1 0
创建一个包含字符向量的单元数组,并将其缩写为前三个字符。由于输出字符矢量为非标量,因此将UniformOutput设置为false。
days = {'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'};
abbrev = cellfun(@(x) x(1:3), days, 'UniformOutput', false)
% abbrev = 'Mon' 'Tue' 'Wed' 'Thu' 'Fri'
语法 @(x)创建了一个匿名函数.
计算两个单元阵列C和D之间的协方差,因为协方差输出是非标量,将UniformOutput设为false。
c1 = rand(5,1); c2 = rand(10,1); c3 = rand(15,1);
d1 = rand(5,1); d2 = rand(10,1); d3 = rand(15,1);
C = {c1, c2, c3};
D = {d1, d2, d3};covCD = cellfun(@cov, C, D, 'UniformOutput', false)
% covCD = [2x2 double] [2x2 double] [2x2 double]
定义并调用自定义错误处理函数。
function result = errorfun(S, varargin)warning(S.identifier, S.message);result = NaN;
endA = {rand(3)};
B = {rand(5)};
AgtB = cellfun(@(x,y) x > y, A, B, 'ErrorHandler', @errorfun, ...'UniformOutput', false)
Matlab cellfun函数相关推荐
- matlab常用函数与常用指令大全
matlab常用函数与常用指令大全 matlab常用函数- - 1.特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 i ...
- 【整理】Matlab常用函数
第一篇:Matlab软件函数 一.软件操作函数 1)命令窗口函数: clc:清空命令窗口,使用向上箭头翻看命令. open:打开文件,文本文件(*.doc),可执行文件(*.exe),图形文件(*.f ...
- matlab cell 函数用法
转自: http://hi.baidu.com/hbwc/blog/item/a89ec511ab669a1bb8127b5c.htm 元胞数组: 元胞数组是MATLAB的一种特殊数据类型,可以将元胞 ...
- MATLAB 主要函数指令表
MATLAB 主要函数指令表(按功能分类) 1 常用指令(General Purpose Commands) 1.1 通用信息查询(General information) demo 演示程序 hel ...
- matlab matlabpool,Matlab matlabpool函数undefined
我尝试使用matlab并行计算功能. 我先输入"版本"来检查,如果我已经安装了并行计算工具箱,它确实Matlab matlabpool函数undefined >> ve ...
- MATLAB常用函数, 常见问题
MATLAB常用函数 1.常用取整函数 round(x):四舍五入函数 floor(x) : 向下取整, 即 floor(1.2)=1, floor(1.8) = 1 ceil(x) : 向上取整, ...
- matlab doc函数,matlab常用函数.doc
matlab常用函数.doc MatLab 常用函数 1. 特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 name ...
- matlab中imresize函数的用法,为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同
为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同?今年 4 月,我在依照 MATLAB 代码自己写一个卷积神经网络 C++ 实现的过程中,就发现了这个问题,不过那 ...
- matlab 数学库,matlab数学函数库
(n) 求 n 的阶乘 如何用 matlab 配方 没有发现 matlab 有这一命令,不过我们可以调用 maple 的命令,调用方法如下: 首先加载 maple 中的 student 函数库,加载. ...
最新文章
- Python3中参数*args和**kwargs介绍
- 艰难就业季,2020 AI算法岗春招汇总 面经大全来了!!!
- mysql管理员操作
- 【ok】李宏毅机器学习12: 对称矩阵
- Some functions worth remembered in C Library (Updating)
- 案例 自动办公_1300张办公系列前台参考图,请您查收!
- php版本哪个没有面向对象,php面向对象的方法重载两种版本比较
- 基于新型存储的大数据存储管理
- Centos7 防火墙操作及端口查询
- CSS3 矢量图标及背景精灵
- php gettext 为空,PHP Gettext
- 20200713:动态规划复习day04
- DialogFragment与PopWindow
- Linux:telnet命令安装
- win7下安装vc6.0(sp5,sp6补丁安装)
- 把照片转换成pdf的格式
- 一个应届毕业生的求职回忆录(指引道路)
- 远程访问及控制SSH
- 解决公务车Bug:公安违章管理中编辑新增的公安违章记录,点击保存按钮报:数据库操作异常,null
- 如何进行计算机系统安装教程,电脑怎么重装系统:系统安装教程
热门文章
- java点播项目_介绍一个P2P点播直播开源项目,挺不错的
- 基于MPC的自适应巡航控制(Matlab代码实现)
- oracle - - 注释符,Oracle数据库扩展语言PL/SQL之注释、分隔符和标识符
- 用Smartforms实现化学分子式上下标动态打印
- 微型计算机中一个字的长度是,微处理器处理的数据基本单位为字。一个字的长度通常是( )...
- 串口VMIN VTIME 详解
- grep -F 用法
- deepin chrome代理出现问题 mangoogle-chrome-stable 问题解决 附加google-chrome代理配置 deepin安装 编译环境
- postman初步及常用脚本
- 最拉风的iPhone玩具AR.Drone飞行器拆解