配列を拡張する方法を教えて下さい

36 vues (au cours des 30 derniers jours)
osamu
osamu le 23 Avr 2024
Commenté : osamu le 23 Avr 2024
M行N列の2次元配列を、要素数がnM行nN列になるように拡張したいです。
値は元の要素が左上になるように配置されることが必要です。
図の例は2倍に拡張した例ですが、この場合は必ず右、下、右斜め下に対して同じ値を持つようにしたいのですが、
intrpt2関数を用いた方法では用意されている内挿methodに適したものがなく、たとえば"nearest"を使うと一番端の要素が狙い通りなりません。
またfor文を使って無理やり拡張する方法は計算時間がかかってしまうため、他に方法が良いアイディアや関数などあれば教えていください。

Réponse acceptée

Akira Agata
Akira Agata le 23 Avr 2024
まさしく repelem 関数の出番です。
たとえば頂いた例だと、以下のようになります。
% 対象となる配列
A = [1 2; 3 4];
% それぞれの要素を繰り返す
B = repelem(A, 2, 2);
% 結果を表示
disp(B)
1 1 2 2 1 1 2 2 3 3 4 4 3 3 4 4
  1 commentaire
osamu
osamu le 23 Avr 2024
ありがとうございます。
この関数を探していました!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur ビッグ データの処理 dans Help Center et File Exchange

Produits


Version

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!