繁体   English   中英

Matlab或R:用另一个矩阵中的值依次替换矩阵中的元素

[英]Matlab or R: replace elements in matrix by values from another matrix in order

我在Matlab或R(最好在R)中要解决的问题。

想象一下,我有一个包含10个元素的向量A。

我还有一个包含30个元素的向量B,其中10个具有值“ x”。

现在,我要按照在A中建立的顺序,用从A 获取的相应值替换B中的所有“ x”。 一旦获取了A中的一个值,当在B中找到下一个“ x”时,就可以使用下一个。

请注意,A和B的大小不同,这是“ x”像元的数量与A的大小一致。

我尝试了不同的方法。 关于如何编程的任何建议?

只要B中的x个条目的数量与A的长度匹配,就可以完成您想要的操作:

B[B=='x'] <- A

(应该清楚这是R解决方案。)

MATLAB解决方案

在MATLAB中,它非常简单,请使用逻辑索引:

B(B == 'x') = A;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM