2015-10-27 12:45 1517人阅读 评论(1) 收藏 举报
 分类:
Matlab/Octave(56) 

版权声明:本文为博主原创文章,未经博主允许不得转载。

 

目录(?)[+]

 

matlab中的containers.Map()有点类似于C++ STL中的map容器,具有key/value映射的功能。

一、新建变量

使用containers.Map()创建一个变量并初始化:

  1. % matlab
  2. num = containers.Map({1, 2, 3}, {'one', 'two', 'three'})

二、查看修改内容

查看num的内容:

num =

Map (带属性):

Count: 3
      KeyType: double
    ValueType: char

查看num(1)的值

  1. % matlab
  2. num(1)

ans =

one
修改num(1)的值

  1. % matlab
  2. num(1) = 'ONE'

然后再查看num(1)的值

  1. % matlab
  2. num(1)

ans =
ONE

三、添加元素

添加元素

  1. % matlab
  2. num(4) = 'four'

然后再查看num(4)的值

  1. % matlab
  2. num(4)

ans =
four

查看num的keys值:

  1. % matlab
  2. keys(num)

输出:

ans =

[1]    [2]    [3]    [4]

查看num的values值:

  1. % matlab
  2. values(num)

输出:

ans =

'ONE'    'two'    'three'    'four'

查看num的size

  1. % matlab
  2. size(num)

输出:

ans =

4     1

四、垂直串联

新建containers.Map()的第二个变量num2

  1. % matlab
  2. num2 = containers.Map({10, 20}, {'ten', 'twenty'})

垂直串联num和num2,containers.Map()支持垂直串联,不支持水平串联。

  1. % matlab
  2. nummerge = [num; num2]

查看nummerge的keys:

  1. % matlab
  2. keys(nummerge)

输出:
ans =

[1]    [2]    [3]    [4]    [10]    [20]

查看nummerge的values:

  1. % matlab
  2. keys(nummerge)

输出:

ans =

'ONE'    'two'    'three'    'four'    'ten'    'twenty'

五、删除元素

从nummerge中删除1及其对应的‘ONE’

  1. % matlab
  2. remove(nummerge, 1)

查看nummerge的keys:

  1. % matlab
  2. keys(nummerge)

输出:
ans =

[2]    [3]    [4]    [10]    [20]

查看nummerge的values:

  1. % matlab
  2. keys(nummerge)

输出:

ans =

'two'    'three'    'four'    'ten'    'twenty'

同时删除多个元素

  1. remove(nummerge, {2, 3})

查看nummerge的keys:

  1. % matlab
  2. keys(nummerge)

输出:
ans =

[4]    [10]    [20]

查看nummerge的values:

  1. % matlab
  2. keys(nummerge)

输出:ans =

'four'    'ten'    'twenty'

matlab中的containers.Map()的更多相关文章

  1. Matlab 中实用数据结构之 containers.Map

    概要   熟悉 Python 的都知道字典 Dict 类型数据结构功能的强大,Matlab 中虽然有表结构,但是其列名必须是亦变量名类型的字符串,如果我想用数字开头的字符串作键值,其表结构就无能为力了 ...

  2. $ 一步一步学Matlab(3)——Matlab中的数据类型

    小学时候我们就知道,数学中有自然数.整数.分数.小数等等很多种类型的数.到了中学,我们又发现了其实还有无理数.复数这些有些特殊的数.到了大学学了高等数学之后,我们又知道了其实还存在着无穷大.无穷小这样 ...

  3. paper 121 :matlab中imresize函数

    转自:http://www.cnblogs.com/rong86/p/3558344.html matlab中函数imresize简介: 函数功能:该函数用于对图像做缩放处理. 调用格式: B = i ...

  4. matlab中imresize

    matlab中函数imresize简介: 函数功能:该函数用于对图像做缩放处理. 调用格式: B = imresize(A, m) 返回的图像B的长宽是图像A的长宽的m倍,即缩放图像. m大于1, 则 ...

  5. MATLAB中imshow()和image()

    MATLAB中imshow()和image(): IMSHOW Display image in Handle Graphics figure. IMSHOW(I) displays the gray ...

  6. MATLAB中文件的读写和数据的导入导出

    http://blog.163.com/tawney_daylily/blog/static/13614643620111117853933/ 在编写一个程序时,经常需要从外部读入数据,或者将程序运行 ...

  7. Matlab 中 Data-driven 风格的 API 设计

    设计 所谓 data-driven API,指的是用户可以把"操作"作为参数,传入函数,像下面这种: stream = dataStream('load', 'example.cs ...

  8. matlab中imread 从图形文件读取图像

    来源:https://ww2.mathworks.cn/help/matlab/ref/imread.html?searchHighlight=imread&s_tid=doc_srchtit ...

  9. MATLAB中绘制质点轨迹动图并保存成GIF

    工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t) ...

随机推荐

  1. Java初学者都必须理解的六大问题 (整理自网络)

    问题一:我声明了什么! 1. String s = "Helloworld!"; 许多人都做过这样的事情,但是,我们到底声明了什么?回答通常是:一个String,内容是“Hello ...

  2. Packetbeat协议扩展开发教程(1)

    Packetbeat ( https://www.elastic.co/products/beats/packetbeat )是一个开源的网络抓包与分析框架,内置了很多常见的协议解析,如HTPP.My ...

  3. 【CF618G】Combining Slimes 概率+矩阵乘法

    [CF618G]Combining Slimes 题意:一个长度为$1\times n$的网格,每次从最右侧往里推入一个数字1或2(数字会一直跑到最左边的空格子里),加入1的概率为p,2的概率为1-p ...

  4. ios中的coredata的使用

    Core Data数据持久化是对SQLite的一个升级,它是iOS集成的,在说Core Data之前,我们先说说在CoreData中使用的几个类. (1)NSManagedObjectModel(被管 ...

  5. 爬虫自动登陆GitHub

    import requests from bs4 import BeautifulSoup r1 = requests.get( url='https://github.com/login' ) s1 ...

  6. php代码不支持多维数组,注释和没有缓存功能。

    php代码:simplet.class.php<?phpclass SimpleT {private $t_vars;private $templates_dir;private $templa ...

  7. url写法细节

  8. HUSTM 1601 - Shepherd

    题目描述 Hehe keeps a flock of sheep, numbered from 1 to n and each with a weight wi. To keep the sheep ...

  9. CVPR2018资源汇总

    CVPR 2018大会将于2018年6月18~22日于美国犹他州的盐湖城(Salt Lake City)举办. CVPR2018论文集下载:http://openaccess.thecvf.com/m ...

  10. HDU 3182 - Hamburger Magi - [状压DP]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3182 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...