matlab 如何把一个矩阵中不同的元素组成一个新数组? 哎matlab中如何把一组数据存入另外一个数组或者矩阵中

matlab\u4e2d\u600e\u4e48\u5c06\u4e00\u4e2a\u77e9\u9635\u4f5c\u4e3a\u53e6\u4e00\u4e2a\u77e9\u9635\u7684\u5143\u7d20\u653e\u8fdb\u53bb

1\u3001\u9996\u5148\u6253\u5f00\u7535\u8111\u4e0a\u7684\u201cmatlab\u201d\u8f6f\u4ef6\uff0c\u4e3b\u754c\u9762\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u53ef\u4ee5\u770b\u5230\u547d\u4ee4\u884c\u7a97\u53e3\u3002

2\u3001\u63a5\u7740\u5728\u547d\u4ee4\u884c\u8f93\u5165\u4e00\u4e2a\u77e9\u9635A\uff0c\u77e9\u9635A\u7684\u503c\u53ef\u4ee5\u81ea\u5b9a\u4e49\uff0c\u6b64\u5904\u4ee51-9\u6570\u5b57\u4e3a\u4f8b\u6784\u9020\u77e9\u9635A\uff0c\u77e9\u9635A\u5982\u4e0b\u56fe\u6240\u793a\u3002

3\u3001\u62fc\u63a5\u77e9\u9635\u9700\u8981\u81f3\u5c11\u4e24\u4e2a\u77e9\u9635\uff0c\u5728\u547d\u4ee4\u884c\u8f93\u5165\u4e00\u4e2a\u77e9\u9635B\uff0c\u6b64\u5904\u4ee510-18\u6570\u5b57\u4e3a\u4f8b\u6784\u9020\u77e9\u9635B\u3002

4\u3001\u4e0b\u9762\u4f7f\u7528\u547d\u4ee4C=[A B]\u6765\u62fc\u63a5\u77e9\u9635A\u548c\u77e9\u9635B\uff0c\u6b64\u7c7b\u62fc\u63a5\u4e3a\u6a2a\u5411\u62fc\u63a5\uff0c\u5de6\u8fb9\u4e3a\u77e9\u9635A\uff0c\u53f3\u8fb9\u4e3a\u77e9\u9635B\u3002

5\u3001\u547d\u4ee4C=[A,B]\u4e5f\u53ef\u4ee5\u7528\u4e8e\u77e9\u9635\u7684\u6a2a\u5411\u62fc\u63a5\uff0c\u4e0e\u4e0a\u4e00\u4e2a\u547d\u4ee4\u7684\u6548\u679c\u76f8\u540c\uff0c\u8fd0\u884c\u7ed3\u679c\u5982\u4e0b\u56fe\u6240\u793a\u3002

6\u3001\u63a5\u4e0b\u6765\u4f7f\u7528\u547d\u4ee4C=[A;B]\u6765\u62fc\u63a5\u77e9\u9635A\u548c\u77e9\u9635B\uff0c\u6b64\u7c7b\u62fc\u63a5\u4e3a\u7eb5\u5411\u62fc\u63a5\uff0c\u4e0a\u8fb9\u4e3a\u77e9\u9635A\uff0c\u4e0b\u8fb9\u4e3a\u77e9\u9635B\u3002

\u82e5\u662f\u6bcf\u4e00\u6b21\u5faa\u73af\u5f97\u5230\u7684impixel\u90fd\u662f\u4e00\u5217\u7684\u8bdd\uff0c\u53ea\u9700\u6bcf\u6b21\u8ba1\u7b97\u51fa\u540e\u5199a(:,i)=impixel,
\u82e5\u662f\u4e00\u884c\uff1aa(i,:)=impixel,
\u82e5impixel\u5f97\u5927\u5c0f\u4e0d\u5b9a\uff0c\u4f60\u5c31\u5728for\u5916\u9884\u5b9a\u4e49\u4e00\u4e2a\u5143\u7ec4a=cell(N,1);\u7136\u540e\u6bcf\u6b21\u5199a{i}=impixel,\u6700\u540e\u6240\u6709\u7684impixel\u90fd\u5b58\u5728a\u91cc\uff0c\u5f53\u7136\u4f60\u4e5f\u53ef\u4ee5\u5b9a\u4e49\u4e00\u4e2a\u7ed3\u6784\u4f53\uff0c\u4e0d\u8fc7\u6211\u89c9\u5f97\u5143\u7ec4\u66f4\u5bb9\u6613\u64cd\u4f5c\u4e00\u4e9b

B为数据源矩阵,假设为一维

A=[]

ka=1
for kb=1:length(B)
if(kb满足某条件或者B(kb)元素满足某条件)
A(ka)=B(kb);

ka=ka+1;

end

end
==================
以上代码中B也可以为2维的,完全一样的代码。但结果A是一维的,刷选出来的有if条件决定
上述代码效率可能不佳(人或B如果不是几个亿大小的矩阵是察觉不出来的)
影响其效率是每次都要自动扩展A矩阵
改进方法是A=size(1,length(B));代替A=[];
在最后让A(ka:end)=[];去掉没用的尾巴,这样在处理大数据时效率会提高,阿门。。。
=================================

>> a=[1 2 2 5 6 8 5 9]
a =
1 2 2 5 6 8 5 9
>> unique(a)
ans =
1 2 5 6 8 9

要具体的一个例子呢,还是要理论性的回答,有想法,留言~~
[email protected]~~

你要指定规则啊!你说说你想实现什么吧?

扩展阅读:matlab怎么把矩阵变成列 ... matlab生成m行n列矩阵 ... matlab用for循环生成矩阵 ... matlab如何把矩阵扩展 ... matlab table转为矩阵 ... matlab magic矩阵 ... matlab随机生成3 3矩阵 ... matlab如何将矩阵化为一行 ... matlab把一列数据变成一行 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网