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函数相关推荐

  1. matlab常用函数与常用指令大全

    matlab常用函数与常用指令大全 matlab常用函数- - 1.特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 i ...

  2. 【整理】Matlab常用函数

    第一篇:Matlab软件函数 一.软件操作函数 1)命令窗口函数: clc:清空命令窗口,使用向上箭头翻看命令. open:打开文件,文本文件(*.doc),可执行文件(*.exe),图形文件(*.f ...

  3. matlab cell 函数用法

    转自: http://hi.baidu.com/hbwc/blog/item/a89ec511ab669a1bb8127b5c.htm 元胞数组: 元胞数组是MATLAB的一种特殊数据类型,可以将元胞 ...

  4. MATLAB 主要函数指令表

    MATLAB 主要函数指令表(按功能分类) 1 常用指令(General Purpose Commands) 1.1 通用信息查询(General information) demo 演示程序 hel ...

  5. matlab matlabpool,Matlab matlabpool函数undefined

    我尝试使用matlab并行计算功能. 我先输入"版本"来检查,如果我已经安装了并行计算工具箱,它确实Matlab matlabpool函数undefined >> ve ...

  6. MATLAB常用函数, 常见问题

    MATLAB常用函数 1.常用取整函数 round(x):四舍五入函数 floor(x) : 向下取整, 即 floor(1.2)=1,  floor(1.8) = 1 ceil(x) : 向上取整, ...

  7. matlab doc函数,matlab常用函数.doc

    matlab常用函数.doc MatLab 常用函数 1. 特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 name ...

  8. matlab中imresize函数的用法,为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同

    为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同?今年 4 月,我在依照 MATLAB 代码自己写一个卷积神经网络 C++ 实现的过程中,就发现了这个问题,不过那 ...

  9. matlab 数学库,matlab数学函数库

    (n) 求 n 的阶乘 如何用 matlab 配方 没有发现 matlab 有这一命令,不过我们可以调用 maple 的命令,调用方法如下: 首先加载 maple 中的 student 函数库,加载. ...

最新文章

  1. Python3中参数*args和**kwargs介绍
  2. 艰难就业季,2020 AI算法岗春招汇总 面经大全来了!!!
  3. mysql管理员操作
  4. 【ok】李宏毅机器学习12: 对称矩阵
  5. Some functions worth remembered in C Library (Updating)
  6. 案例 自动办公_1300张办公系列前台参考图,请您查收!
  7. php版本哪个没有面向对象,php面向对象的方法重载两种版本比较
  8. 基于新型存储的大数据存储管理
  9. Centos7 防火墙操作及端口查询
  10. CSS3 矢量图标及背景精灵
  11. php gettext 为空,PHP Gettext
  12. 20200713:动态规划复习day04
  13. DialogFragment与PopWindow
  14. Linux:telnet命令安装
  15. win7下安装vc6.0(sp5,sp6补丁安装)
  16. 把照片转换成pdf的格式
  17. 一个应届毕业生的求职回忆录(指引道路)
  18. 远程访问及控制SSH
  19. 解决公务车Bug:公安违章管理中编辑新增的公安违章记录,点击保存按钮报:数据库操作异常,null
  20. 如何进行计算机系统安装教程,电脑怎么重装系统:系统安装教程

热门文章

  1. java点播项目_介绍一个P2P点播直播开源项目,挺不错的
  2. 基于MPC的自适应巡航控制(Matlab代码实现)
  3. oracle - - 注释符,Oracle数据库扩展语言PL/SQL之注释、分隔符和标识符
  4. 用Smartforms实现化学分子式上下标动态打印
  5. 微型计算机中一个字的长度是,微处理器处理的数据基本单位为字。一个字的长度通常是(     )...
  6. 串口VMIN VTIME 详解
  7. grep -F 用法
  8. deepin chrome代理出现问题 mangoogle-chrome-stable 问题解决 附加google-chrome代理配置 deepin安装 编译环境
  9. postman初步及常用脚本
  10. 最拉风的iPhone玩具AR.Drone飞行器拆解