就是有一系列的坐标值 如(1,2),(2,3),(3,4)。。。如何把其赋值给一个行数组

就是有一系列的坐标值 如(1,2),(2,3),(3,4)。。。如何把其赋值给一个行数组,第1张

我觉得你可以直接用一个n2(n是坐标值的个数)矩阵来存储,因为用cell的话,matlab *** 作矩阵的快捷性和优越性就体现不出来了。
如果想用cell的话,不明白下面的步骤可以在matlab中输入help cell来看更具体的:
1、申请空的cell: mycell = cell(n,1);
2、给每个cell赋值,用循环吧: cell{i,1} = [x(i),y(i)];
3、访问的时候比如访问第一个元素的x就是cell{1,1}[1,1]
还是不建议这样使用

A(i)应该A{i}才吧
——————————————————————
cellmatlab种数据类型用括号定义括号任意类型数据或矩阵
B={[一;二]}
定义cell型变量B面保存矩阵[一;二]
要引用面数据要括号写应标即
B{一}
面我给B再加元素我定义
B(二)={'hello'}
利用引用定义
B{二}='hello'
第二种比第种更便所更用
B两元素B(一){[一;二]}B(二){'hello'}每元素都cell型(注意B{一}、B{二}区别B{一}[一;二]B{二}'hello')
cell函数造元素cell类型矩阵
A=cell(一00,一)造一00行一列cell矩阵每元素都没
A{i}flag=-一;
A{i}status=zeros(一,一三);
始定义每元素数据看每cell保存都结构型数据
————————————————————————————
A{i}flag=-一;
A{i}status=zeros(一,一三);
实际并A{i}储存两元素储存结构型数据
matlab共六种数据类型别数值、字符、逻辑、结构、细胞、类
其细胞cell类型数据
A{i}flag=-一;
A{i}status=zeros(一,一三);
实际A{i}储存结构类型数据两员名flag、名status面两句同元素两员进行赋值已
实际我自定义结构变量比
aone=[一;二];
atwo='hello';
a结构型变量两员别叫onetwo请记住a变量两变

那个A(i)应该是A{i}才对吧。
——————————————————————
cell是matlab中的一种数据类型,用大括号定义,括号里可以是任意类型的数据或矩阵。

B={[1;2]}
这就定义了一个cell型的变量B,里面保存的是一个矩阵[1;2]
要引用里面的数据只要在大括号里写上对应的下标即可,如
B{1}
下面我们给B再加个元素,我们可以这样定义
B(2)={'hello'}
也可以利用引用的方法定义
B{2}='hello'
第二种方法比第一种方法更方便所以更常用。
这样B就有两个元素了,B(1)是{[1;2]},B(2)是{'hello'},每个元素都是cell型的(注意和B{1}、B{2}的区别,B{1}是[1;2],B{2}是'hello')
cell函数是造元素为cell类型的矩阵
你这里A=cell(100,1)就是造了100行1列的cell矩阵。当然此时每个元素里什么都还没有。
然后
A{i}flag=-1;
A{i}status=zeros(1,13);
就开始定义每个元素里的数据了,可以看到每个cell里保存的都是结构型数据。
————————————————————————————
A{i}flag=-1;
A{i}status=zeros(1,13);
实际上并不是在A{i}中储存了两个元素,而是储存了一个结构型数据。
matlab中共有六种数据类型,分别为数值、字符、逻辑、结构、细胞、类。
其中细胞就是你这里的cell类型数据。
A{i}flag=-1;
A{i}status=zeros(1,13);
实际上是在A{i}中储存了一个结构类型数据,它有两个成员,一个名为flag、一个名为status,上面两句话只不过是对这同一个元素的两个成员进行赋值而已。
实际上我们也可以自己定义一个结构变量,比如
aone=[1;2];
atwo='hello';
a就是一个结构型的变量,它有两个成员,分别叫one和two。但请记住,a是一个变量,不是两个变量。

for i=0:s
A=zeros(i+1,1);
for j=0:i
A(j+1,1)=q1r1^(i-j)q2r2^j;
end
C{i+1,1}=A;
end

%很明显i=1:6,因此循环后d只有六个元素,而 r=normrnd(m(i),n(i),1,200)为200个元素,当然不可以了,你的意思是把每次产生的r赋给d中的元素是不。可以这样
function for_rnd()
m=[1200,700,650,1300,600,630];
n=[100,50,50,80,100,80];
%产生均值,方差分别为m(i),n(i)的随机数200个
d=cell(1,6);%用单元数组
for i=1:6
r=normrnd(m(i),n(i),1,200);
d{i}=r;
end
%d{1}就是第一个1X200 的随机数,可以用d{1}(1)引用第一个1X200 的随机数的第一个元素。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13106192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存