问题:

(注意,matlab判断一个数的类型的函数是class(var)) 如果p为一个数,那么h(1)=p,是没有问题的。 如果p为一个向量,那么h(1,:)=p是没有问题的。 如果p是一个矩阵的话,上面的两种赋值方法都是会有错误的。 那么要如何处理呢 ???? 这时就用到了cell数据类型了。cell的每个单元都可以存储任何数据,比如传递函数等。当然,存储矩阵更是没有问题的了。但是用cell数据类型之前,要先初始化。

1、细胞型数据的定义

1)直接赋值定义:细胞型变量在定义时需要使用大括号,元素用都好隔开

例: B = {1:4,A,‘abcd’}

2)使用cell函数,预先为细胞型变量定义空间

例: A = cell(m,n) 定义一个空的m行n列的cell类型

2、细胞型数据的访问

1)对细胞型变量元素的引用应当采用大括号作为下标的标示,用小括号作为下标标示时,将只显示该元素的压缩形式。

比如:

A = {1:4,2.5,‘abc’};
>> A A = [1x4 double] [2.5000] 'abc' >> A(1,1) ans = [1x4 double]
>>  A{1,1} ans = 1 2 3 4
>> A(1,2) ans = [2.5000] >> A{1,2} ans = 2.5000
>>  A(1,3) ans = 'abc'
>> A{1,3} ans = abc
>> A{1,1}(2) ans = 2

2 ) 改变cell类型元素的值

>> A{1,2} = 3:4
A =
[1x4 double] [1x2 double] 'abc'
>>  A{1,2}
ans =
3 4
3)删除cell中的元素,需要用A(1)=[],若使用A{1}=[]只能将该元素置空不能删除

>> A
A = [1x4 double] [1x2 double] 'abc' >> A(2) =  []
A = [1x4 double] 'abc' >> A{2} = []
A = [1x4 double] []

4) cell函数

cellplot(A)

cell(m,n) 创建一个m行n列的细胞型变量

cellfun('fun’,A) 对细胞型变量A作用fun函数,fun可以为isreal,isempty,length,islogical,ndims等
celldisp(A) 完全显示细胞型变量的内容
cellplot(A) 用图形显示细胞型变量的内容
num2cell 将数值数组转换为细胞型变量
deal 输入输出处理
cell2struct 将细胞型变量转换为结构型变量
struct2cell 将结构型变量转换为细胞型变量
iscell 判断是否为细胞型变量
reshape 改变细胞型数组的结构

注意事项:

names={'s1'};     %或  names=cell(1, 1); 
names{1} = 's1';
names={names{1,:}, 's2'}; %在字符串数组后面append一个字符串。
names={names{1,:}, 's3'};      %在字符串数组后面append一个字符串。
% 这时names是一个1x3的字符串数组,若要变成3x1的数组,可以:
names = names';

cell数组的更多相关文章

  1. matlab的cell数组

    matlab的cell数组 元胞数组: 元胞数组是MATLAB的一种特殊数据类型,可以将元胞数组看做一种无所不包的通用矩阵,或者叫做广义矩阵.组成元胞数组的元素可以是任何一种数据类型的常数或者常量,每 ...

  2. MATLAB cell 数组介绍

    转载:http://www.matlabsky.com/forum.php?mod=viewthread&tid=21089 由于工作需要,经常要处理大量的实验数据.基本都是由仪器导出来,随着 ...

  3. 解决cell循环利用造成的重复勾选

    @interface ProfessionViewController (){ NSMutableArray *_professionArray;//cell模型数组 NSMutableArray * ...

  4. cell函数总结

    元胞数组: 元胞数组是MATLAB的一种特殊数据类型,可以将元胞数组看做一种无所不包的通用矩阵,或者叫做广义矩阵.组成元胞数组的元素可以是任何一种数据类型的常数或者常量,每一个元素也可以具有不同的尺寸 ...

  5. UICollectionView中Cell左对齐 居中 右对齐 等间距------你想要的,这里都有

    支持靠左,居中,靠右,等间距对齐. 靠左等间距.png 居中等间距.png 靠右等间距.png #import <UIKit/UIKit.h> typedef NS_ENUM(NSInte ...

  6. matlab 怎么建立结构体数组?

    https://zhidao.baidu.com/question/537198107.html 怎么定义一个结构体数组,使数组的每个元素是一个结构体变量.像这样:a=(1,2)a(1)=struct ...

  7. [转]MATLAB cell数据类型

    细胞型数据类型(cell)使不同类型和不同维数的数组可以共存,细胞型数组实际上可以认为是一种以任意形式的数组为分量的多维数组. 1.细胞型数据的定义 1)直接赋值定义:细胞型变量在定义时需要使用大括号 ...

  8. iOS UITableView获取特定位置的cell

    代码地址如下:http://www.demodashi.com/demo/13307.html 一.tableView双级联动 以上两种效果比较类似,实现的关键在于都是需要获得在滑动过程中滑动到tab ...

  9. iOS_25_彩票设置的cell的数据源模型的封装

    组模型的封装 SettingGroup // // SettingGroup.h // 25_彩票 // // Created by beyond on 14-8-28. // Copyright ( ...

随机推荐

  1. [译]Python面试中8个必考问题

    1.下面这段代码的输出结果是什么?请解释. def extendList(val, list=[]): list.append(val) return list list1 = extendList( ...

  2. IdentityServer(11)- 使用Hybrid Flow并添加API访问控制

    关于Hybrid Flow 和 implicit flow 我在前一篇文章使用OpenID Connect添加用户认证中提到了implicit flow,那么它们是什么呢,它和Hybrid Flow有 ...

  3. 爬取网页内容java

    下面介绍的这个方法只是作为抛砖引玉:根据网页URL就可以抓取其中的内容 /** * @title getHtmlResourceByUrl * @param url 网址 * @param encod ...

  4. bzoj:1700: [Usaco2007 Jan]Problem Solving 解题

    Description 过去的日子里,农夫John的牛没有任何题目. 可是现在他们有题目,有很多的题目. 精确地说,他们有P (1 <= P <= 300) 道题目要做. 他们还离开了农场 ...

  5. And Then There Was One(约瑟夫问题变形)

    题目链接:http://poj.org/problem?id=3517 And Then There Was One Time Limit: 5000MS   Memory Limit: 65536K ...

  6. kafka数据迁移实践

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:mikealzhou 本文重点介绍kafka的两类常见数据迁移方式:1.broker内部不同数据盘之间的分区数据迁移:2.不同broker ...

  7. linux下vi编辑某文件时,操作出现 错误提示: E325: ATTENTION 2, Found a swap file by the name ".p1.c.swp"

    当我在linux下用vi打开p1.c文件时 root@iZ2zeeailqvwws5dcuivdbZ:~/1/01/指针# vi p1.c 会出现如下信息: E325: ATTENTION Found ...

  8. Coins、Tokens、山寨币:区别在哪里

    [译] Coins, Tokens & Altcoins: What's the Difference? coin:指"正宗的"数字货币,比如比特币 tokens:比如用 ...

  9. POJ 1422 Air Raid

    题目链接: http://poj.org/problem?id=1422 Description Consider a town where all the streets are one-way a ...

  10. 如何初始化grunt

    为什么使用任务运行工具Grunt -- 官方解释 简而言之,自动化.当你处理诸如代码最小化, 代码编译, 单元测试, 代码规范校验等等重复任务时, 你必须要做的工作越少,你的工作就变得越简单.在你完成 ...