[英]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中,它非常简单,请使用逻辑索引:
B(B == 'x') = A;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.