码迷,mamicode.com
首页 > 其他好文 > 详细

Matlab中cellfun函数的使用

时间:2015-07-14 20:09:00      阅读:1673      评论:0      收藏:0      [点我收藏+]

标签:

Compute the mean of each vector in cell array C.

C = {1:10, [2; 4; 6], []};

averages = cellfun(@mean, C)
This code returns

averages =
    5.5000    4.0000       NaN

.............................................................

Compute the size of each array in C, created in the previous example.

[nrows, ncols] = cellfun(@size, C)
This code returns

nrows =
     1     3     0
ncols =
    10     1     0

  ..........................................................

  cellfun中使用自定义函数对cell数组进行处理;既然可以自定义函数,那么cellfun中的的中间部分的参数个数和自定义函数需要的参数数目相同。

  还能这么用。

 

queryNearestNeighborIds = cellfun( @(vector, index) vector(index), queryCandidateIds, queryNearestNeighborIds, ‘UniformOutput‘, false );
	

 

  ................................................

 

Create a cell array that contains strings, and abbreviate those strings to the first three characters. Because the output strings are nonscalar, set UniformOutput to false.

days = {‘Monday‘, ‘Tuesday‘, ‘Wednesday‘, ‘Thursday‘, ‘Friday‘};

abbrev = cellfun(@(x) x(1:3), days, ‘UniformOutput‘, false)
The syntax @(x) creates an anonymous function. This code returns

abbrev = 
    ‘Mon‘    ‘Tue‘    ‘Wed‘    ‘Thu‘    ‘Fri‘

Matlab中cellfun函数的使用

标签:

原文地址:http://www.cnblogs.com/hxsyl/p/4646033.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!