0

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

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

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

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

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

我尝试了不同的方法来做到这一点。关于如何编程的任何建议?

4

2 回答 2

2

只要 中的x条目数B与 的长度匹配A,这将满足您的要求:

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

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

于 2013-04-30T17:30:58.070 回答
2

MATLAB 解决方案

在 MATLAB 中很简单,使用逻辑索引:

B(B == 'x') = A;
于 2013-04-30T17:31:57.043 回答