matlab中如何把一个向量中的每个元素与元胞数组中的每个元素比较,返回元胞数组里元素在向量中的位置。

作者&投稿:超阎 (若有异议请与网页底部的电邮联系)
matlab 如何读取cell元胞数组中每一个cell元胞元素的名称?~

例如,A是一个元胞数组
那么A{i,j}(m,n)表示:
元胞第i行j列矩阵的第m行第n列

for(i=1:1:length(b))
c=b{i};
disp(c)
end

建立一个文件shiyan1.m,然后用下面的代码测试,不知道你是不是这个意思:

function shiyan1
clc;
global a;
a = { 'ab'; 'cde'; 'fg'; 'hi'; 'kl' };
p = {  'fg;kl;cde'; 'hi;ab' };
p0 = cellfun( @subfun, p, 'UniformOutput', false );

function po = subfun( pi )
global a;
names = regexp( pi, ';', 'split' );% 把几个名字分割开来
l = length( names );
po = '';
for i = 1 : l - 1
    % 搜索pi每个名字在a里的位置
    index = find( cellfun( @( x ) isequal( x, names{ i } ), a, 'UniformOutput', true ) );
    po = [ po, num2str( index ), ';' ];
end
index = find( cellfun( @( x ) isequal( x, names{ l } ), a, 'UniformOutput', true ) );
po = [ po, num2str( index ) ];




如何把matlab画出的图形保存起来?
1.我们需要对matlab有一个初步的了解后,才可能完成后续的步骤,例子如下:2.现在我们需要把图形隐藏起来,也就是不主动弹出图形窗口,这一步需要我们了解相关的函数句柄的知识,具体看图:3.在上一步中,函数图形的可见性(visible)已经关闭(off),也就是被隐藏起来了,接着我们得把plot函数做出的图...

如何把matlab中的矩阵翻转排列?
matlab中把一维数组逆序排列,可以通过fliplr函数来进行操作。fliplr,是指对矩阵操作的函数,可以实现矩阵翻转。将一维数组逆序排列步骤(如a=[1,2,3,4,5]转成b=[5,4,3,2,1]):1、双击打开matlab应用程序。2、在matlab界面中的“命令行窗口”中输入命令。3、根据红色区域位置,在“命令行窗口”...

matlab\/simulink中如何把示波器输出的模拟信号转换成数字信号显示?_百度...
1、首先打开matlab的simulink工具箱:输入simulink按下回车键,如下图所示。2、然后添加连续的模拟信号函数sin(x),如图所示。3、接着添加示波器,用来显示连续的模拟信号:输入scope,按下回车,如下图所示。4、然后将信号和示波器链接起来,如图,构成一个超级简单的系统框图。5、最后点击运行按钮,然后双...

在Matlab中怎样把一个程序保存为一个.m文件
1、双击打开matlab程序,切换工作目录到picturefans,如下图。2、点击左上角新建脚本按钮,如下图。3、在新建的文件中输入代码,以以下代码为例,如下图。4、点击左上角的save as按钮,进行另存为,如下图。5、输入文件名进行保存,这时就会在我们的工作目录下创建一个m文件,如下图。

如何在MATLAB中把一个一个的数值放进数组中
1、首先在命令行窗口中输入a=[1 2 3 4],创建a数组,如下图所示。2、如果想在数组末尾添加新元素,可以输入a=[a 5],按回车键之后可以看到a数组末尾添加了元素5,如下图所示。3、然后在数组末尾添加元素,也可以输入a(end+1)=5,可以达到同样的效果,如下图所示。4、如果想在数组中间添加元素...

matlab 如何把三维矩阵拼接
1、首先,定义A和B两个2*2的矩阵。cat(维度,A,B)可以按照给定方向拼接矩阵。如图使用cat(1,A,B)把这两个矩阵竖着连起来。使用cat(2,A,B)把这两个矩阵横着连起来。2、C=cat(3,A,B)把两个矩阵摞成一个三维数组,如图。3、使用cat要注意,在拼接方向上的宽度要一致才可拼接。4、如图,2*...

matlab 如何把mat数据进行转置
将变量tr_dat trls tt_dat ttls 保存到ImageNet15.mat文件中 save ImageNet15 tr_dat trls tt_dat MATLAB 和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等。MATLAB的基本...

MATLAB如何把矩阵中值相等的数 替换成不同的值?
MATLAB如何把矩阵中值相等的数替换成不同的值?这个问题可以这样解决:1、将二值图像中的0和1赋值给A变量。即 A=[0,0,1,0,0,1;0,0,1,0,0,1;0,1,0,0,1,1;0,1,0,0,1,0;1,0,0,1,1,0;0,0,0,1,0,0];2、从A矩阵中,提取红色区域部分的0和1赋值给B变量,提取蓝色区域...

怎么把matlab中坐标轴设置为xy?
可以用matlab提供的坐标轴设置函数axis进行设置(对当前坐标轴进行设置),具体用法如下:1、plot(x, y); \/\/ 画图后用axis函数设置坐标轴的范围。2、axis([xmin xmax ymin ymax]); % 设置坐标轴在指定的区间。3、xmin、xmax 表示设置横坐标的最小最大值。4、ymin、ymax 表示设置纵坐标的最小...

如何把matlab中的数显示出来?
1、打开matlab软件主界面,如图所示。2、在命令窗口输入内容后,加上分号,回车后,输出数据不显示。若内容后面不带分号,回车后,输出数据可显示。如图所示。3、在脚本文件里,可以选用disp显示函数对输出内容进行显示。如图所示。4、也可以用fprintf函数显示数据,格式为fprintf(format,data),format为打印...

阿巴嘎旗18324311728: matlab 如何对向量中的每一个元素进行赋值?例如:A(x)=3x+4,其中x=1,2.10如何运用matlab表示p=(A(1),A(2),A(3).A(10)) -
苍素甲氧:[答案] 直接写就行了啊 >> x=1:10; >> p=3*x+4; p = 7 10 13 16 19 22 25 28 31 34

阿巴嘎旗18324311728: matlab中,对一个向量中的每个元素,若有元素与5相等的,则停止,若没有则在向量后面增加一个0元素matlab中,对一个向量中的每个元素,若有元素与... -
苍素甲氧:[答案] clear all;clc; a=rand(1,10); a(5)=5; if ismember(5,a)==0 a=[a,0] elseif ismember(5,a)==1 a break; end

阿巴嘎旗18324311728: 在matlab中如何获取某已知列向量中的每一个元素的值?并且将使用这些值 -
苍素甲氧: for i = 1:max(sizeof(x)) x(i) end

阿巴嘎旗18324311728: matlab中如何把一个向量中的每个元素与元胞数组中的每个元素比较,返回元胞数组里元素在向量中的位置. -
苍素甲氧: 建立一个文件shiyan1.m,然后用下面的代码测试,不知道你是不是这个意思: function shiyan1 clc; global a; a = { 'ab'; 'cde'; 'fg'; 'hi'; 'kl' }; p = { 'fg;kl;cde'; 'hi;ab' }; p0 = cellfun( @subfun, p, 'UniformOutput', false );function po = subfun( pi ) global a; ...

阿巴嘎旗18324311728: 菜鸟求助matlab怎么样让一个1xn的向量中的每个元素是个矩阵 -
苍素甲氧: 用 元胞结构 B{1}=[1,2,3,4,6]; B{2}=[1,23,4,5,6]; B的两个元素是两个不同的矩阵

阿巴嘎旗18324311728: matlab编程求向量中每100个数据的平均值 -
苍素甲氧: 假设你的数据都在A里面,然后把这每一百个数据的平均值储存在B里面. B=[]; for i=1:10 B1=mean(A((100*i-99):100*i)); B=[B B1 ]; end

阿巴嘎旗18324311728: matlab中,对一个向量中的每个元素,若有元素与5相等的,则停止,若没有则在向量后面增加一个0元素
苍素甲氧: clear all;clc; a=rand(1,10); a(5)=5; if ismember(5,a)==0 a=[a,0] elseif ismember(5,a)==1 a break; end

阿巴嘎旗18324311728: 用matlab把向量A中每一个与a相等的元素移到最后形成一个向量.怎么做 -
苍素甲氧: 思路:先让B的所有元素都等于a,然后将B的前几个元素替换为A中不等于a的元素,参考代码: >> A=[1,2,3,2,4]; >> a=2; >> B = a*ones(size(A)); % 先把B全部元素设置等于a >> t = A~=a; % 找出A中不等于a的元素的索引 >> B(1:sum(t)) = A(t); % 将B的前几个元素替换为A中不等于a的元素 >> BB = 1 3 4 2 2

阿巴嘎旗18324311728: matlab如何把向量中的各元素转换成一个数?要高效的 -
苍素甲氧: 楼上的方法都很好,谢谢大家")这个问题的起源是想判断一个循环,当向量a中的元素不全为1时执行while 循环,a中只有0、1、2这三类数据.例如,初始时a=[1 2 0 1 0],但是我用(while a~=1)或者(while a~=[1 1 1 1 1])时程序根本不执行while中的语句,所以才想把a转换成数字12010,这样可以直接跟11111进行比较.下面这个语句倒是可以用(while not(all(a==1))),但是总感觉效率不高(a的维数大概是500),不知道这条语句跟上面转换成数字后进行比较的方法相比哪种方法的效率高?请问有没有其它好的办法啊?

阿巴嘎旗18324311728: MATLAB用户输入一个向量,编写函数将这个向量中的元素从小到大进行排列,并输出排列好的向量 -
苍素甲氧: >> a = input( 'input a vector:' ) input a vector:[ 3, 1, 6, 4, 9 ]a = 3 1 6 4 9>> sort( a )ans = 1 3 4 6 9

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网