簡體   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