一、

1、元胞数组的创建

>>  a={'matlab',;ones(,),:}

a = 

    'matlab'        [         ]
[2x3 double] [1x10 double]>> a={'matlab',;ones(,),:}
>>  b=[{'matlab'},{};{ones(,)},{:}]

b = 

    'matlab'        [         ]
[2x3 double] [1x10 double]

a和b是等价的

>>  c={}
c =
[]

>> c(2,2)={5}

c =

[10] []
[] [5]

>> c(1,2)={2}

c =

[10] [2]
[] [5]

clear all

a={'matlab',;ones(,),:}
b=[{'matlab'},{};{ones(,)},{:}]
c={}
c(,)={}
c(,)={}
c(,)=

赋值需用花括号,下标用小括号。

>> isequal(a,b)

ans =
>> whos
Name Size Bytes Class Attributes a 2x2 cell
ans 1x1 logical
b 2x2 cell
c 2x2 cell
>> d=cell(,)

d = 

    []    []    []
[] [] []
[] [] []

2、元胞数组访问

>> str=a(,)

str = 

    'matlab'

>> class(str)

ans =

cell
>> str=a{,}

str =

matlab

>> class(str)

ans =

char
>> a{,}

ans =

>> a(,)

ans = 

    [1x10 double]

()和{}有着本质的区别,大括号用于表示元胞的内容,小括号表示指定的元胞。

>> a(,)()
错误: ()-索引必须显示在索引表达式的最后。 >> a{,}() ans =
>> b=c{:,:}

b =

>> b=c(:,:)

b = 

    []    []
[] []

b相当于从c中获取了四个元胞,用a的例子更好理解

>> d=a(,:)

d = 

    [2x3 double]    [1x10 double]

>> d=a(,)

d = 

    [1x10 double]

>> d=a{,}

d =

3、元胞数组的删除和重塑

要删除单元数组中的行或列,可以用冒号表示单元数组中的行或列,然后对其赋一个空矩阵即可。

>> a={20,'matlab';ones(2,3),1:3}

a = 

    [        20]    'matlab'
[2x3 double] [1x3 double]

>> a{1,2}=[]

a =

[ 20] []
[2x3 double] [1x3 double]

>> a{1,1}=[]

a =

[] []
[2x3 double] [1x3 double]

>> a={,'matlab';ones(,),:}

a = 

    [        ]    'matlab'
[2x3 double] [1x3 double] >> a() ans = [2x3 double] >> a() ans = 'matlab'

可以看出四个元胞数组的排序

>> a{}=[]

a = 

    [        ]    'matlab'
[2x3 double] [] >> a()=[] a = [] [2x3 double] 'matlab'

删除一个之后的重新排序。

  

MATLAB——元胞数组的更多相关文章

  1. MATLAB元胞数组

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

  2. matlab中元胞数组(cell)转换为矩阵

    matlab中元胞数组(cell)转换为矩阵. cell转换为矩阵函数为:cell2mat(c),其中c为待转换的元胞数组: 转化之后的矩阵可能不满足我们对矩阵维数的要求,那么也许还需要下面两个函数: ...

  3. matlab学习笔记12_3串联结构体,按属性创建含有元胞数组的结构体,filenames,isfield,isstruct,orderfields

    一起来学matlab-matlab学习笔记12 12_3 结构体 串联结构体,按属性创建含有元胞数组的结构体,filenames,isfield,isstruct,orderfields 觉得有用的话 ...

  4. matlab学习笔记12单元数组和元胞数组 cell,celldisp,iscell,isa,deal,cellfun,num2cell,size

    一起来学matlab-matlab学习笔记12 12_1 单元数组和元胞数组 cell array --cell,celldisp,iscell,isa,deal,cellfun,num2cell,s ...

  5. matlab中元胞数组的创建与内容读取

    一.创建元胞数组 1.用cell命令创建规格为2*2的空元胞 >> a=cell(2,2) a = [] [] [] [] 2.用大括号"{}"创建元胞数组并赋值 &g ...

  6. MATLAB中TXT数据文件读取并写入元胞数组的方法与步骤

    一. TXT数据文件读取 Data = load('train.txt');   %简单的文件读取,这时在工作区可以看到导入的大数据变量Data 二.大数据变量Data装入元胞数组中 D = cell ...

  7. matlab笔记(1) 元胞结构cell2mat和num2cell

    摘自于:https://zhidao.baidu.com/question/1987862234171281467.html https://www.zybang.com/question/dcb09 ...

  8. matlab的cell数组

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

  9. 美国康奈尔大学BioNB441元胞自动机MATLAB应用

    美国康奈尔大学BioNB441在Matlab中的元胞自动机 介绍 元胞自动机(CA)是用于计算计划利用当地的规则和本地通信.普遍CA定义一个网格,网格上的每个点代表一个有限数量的状态中的细胞.过渡规则 ...

随机推荐

  1. JZOJ 5236. 【NOIP2017模拟8.7A组】利普希茨

    5236. [NOIP2017模拟8.7A组]利普希茨 (File IO): input:lipschitz.in output:lipschitz.out Time Limits: 1000 ms ...

  2. 基于osg的python三维程序开发(一)

    背景: osg是一款开源的三维引擎,在过去多年的发展中积累了大量的用户,该引擎基于场景树的管理,使用方法简单.但是对长期使用python作为开发工具的朋友来说, 有一定门槛. 下面的小程序,演示了如何 ...

  3. 01-初识InfluxDB

    初识InfluxDB 1. InfluxDB介绍 时间序列数据库,简称时序数据库,Time Series Database,一个全新的领域,最大的特点就是每个条数据都带有Time列. 时序数据库到底能 ...

  4. Linux启动nginx时报错nginx: [emerg] getpwnam("nginx") failed

    编译时指定了用户而没有创建用户导致报错 解决: 查看你添加的用户是什么, [root@localhost nginx]# sbin/nginx -Vnginx version: nginx/1.10. ...

  5. 【JAVA进阶架构师指南】之一:如何进行架构设计

    前言   本博客是长篇系列博客,旨在帮助想提升自己,突破技术瓶颈,但又苦于不知道如何进行系统学习从而提升自己的童鞋.笔者假设读者具有3-5年开发经验,java基础扎实,想突破自己的技术瓶颈,成为一位优 ...

  6. *fetch(_, { call, put }) { --- generator

    effects: { *fetch(_, { call, put }) { const response = yield call(queryUsers); yield put({ type: 'sa ...

  7. C#读取静态类常量属性和值

    1.背景最近项目中有一个需求需要从用户输入的值找到该值随对应的名字,由于其它模块已经定义了一份名字到值的一组常量,所以想借用该定义.2.实现实现的思路是采用C#支持的反射.首先,给出静态类中的常量属性 ...

  8. 《深入理解 Java 虚拟机》读书笔记:早期(编译期)优化

    正文 Java 语言的 3 类编译器: 前端编译器:把 java 文件 转变成 class 文件.例如:Sun 的 Javac. JIT 编译器(即时编译器):后端运行期编译器,把字节码转变成机器码. ...

  9. (11)nc命令(每周一个linux命令)

    nc(netcat)实用程序几乎可用于所有涉及TCP或UDP的事情.它可以打开TCP连接,发送UDP数据包,监听任意TCP和UDP端口,进行端口扫描,处理IPv4和IPv6.与telnet不同,nc可 ...

  10. Javascript十六种常用设计模式

    单例模式 何为单例模式,就是无论执行多少次函数,都只会生成一个对象哈哈,看一个简单的demo function Instance(name) { this.name = name; } Instanc ...