主要内容

このページ最新ではありませ。をクリックし,英语のの最新版版を参照参照し。

Ind2sub

线形インデックス添字への変换

说明

[[,,,,上校] = ind2sub(SZ,,,,印第安は,サイズSZの行列について线形インデックス印第安に対応等価行との添字を含む配列と配列上校を返し。ここで,SZは2要素要素,,SZ(1)は行数,SZ(2)は列数指定します。

[[i1,i2,...,在] = ind2sub(SZ,,,,印第安は,サイズSZの多次配列について,インデックスインデックス印第安に対応等価多次元添字含む含むn个の配列i1,i2,...,在を返し。ここで,SZは,の次元のサイズをするするn要素ベクトルです。

すべて折りたたむ

线形インデックス[3 4 5 6]3行3列のの行と列にします。线形インデックスインデックスから添字添字(位置による付け)へへへへへ

入力ベクトル作成,変换実行します。

ind = [3 4 5 6];sz = [3 3];[Row,col] = Ind2Sub(SZ,IND)
行=1×43 1 2 3
col =1×41 2 2 2

线形インデックス[3 4 5 6]を2x 2 x 2ののの添字に変换変换インデックスからからからからからからからからからからからからからからからからからからからからからからからインデックスインデックスインデックスインデックス线形线形ののの配列のの添字添字添字添字添字添字添字添字添字添字添字添字添字添字添字添字添字添字添字

入力ベクトル作成,変换実行します。

ind = [3 4 5 6];sz = [2 2 2];[i1,i2,i3] = ind2sub(sz,ind)
i1 =1×41 2 1 2
i2 =1×42 2 1 1
i3 =1×41 1 2 2

3次元线形をインデックスに変换ます。。

14番目番目番目の要素に対応する添字インデックスインデックスを求めます。。

a = rand(3,4,2);[行,col,page] = ind2sub(size(a),14)
行= 2
col = 1
页= 2

両方のインデックスがの同じ要素指しいることを确认します。

A(14)
ANS = 0.4854
A(行,col,页面)
ANS = 0.4854

n次元配列Ind2subをする通常行列行列のににににににののををを指定指定指定しししますますますますます。。例例例は,,,,,,,,次元次元次元次元次元次元次元次元配列配列配列についてについてについてについてについて个个个个よりより少ない少ない出力引数を

2 x 2 x 2の3次元次元について,,,,のインデックス変换するために必要な入力引数を作成作成します

ind = 1:8;sz = [2 2 2];

Ind2sub2 x 2 x 2 x 2ののの列およびページをときときののののののつのつの出力引数。。。。ますます

[行,col,page] = ind2sub(sz,ind)
行=1×81 2 1 2 1 2 1 2
col =1×81 1 2 2 2 1 1 2 2
页=1×81 1 1 1 1 2 2 2 2

出力出力をつのみつのみした场合,,Ind2sub3のの番目次元を无视し,その代わりにサイズサイズがががががががががががががががががががが列列列列列列列列列次元

[Row,col] = Ind2Sub(SZ,IND)
行=1×81 2 1 2 1 2 1 2
col =1×81 1 2 2 3 3 4 4

出力出力をつのみつのみし场合,,Ind2sub2 2番目番目番目番目番目次元をして,その代わりににサイズがががががががががががががががががががががががががががががががががががががが

行= Ind2Sub(SZ,IND)
行=1×81 2 3 4 5 6 7 8

入力引数

すべて折りたたむ

配列の正整数のとしてし。ベクトルのの各要素は対応対応する次元次元のサイズをを示し示し[2 3 4]2 x 3 x 4の配列定义。。。

データ::单身的|双倍的|int8|INT16|INT32|INT64|UINT8|UINT16|UINT32|Uint64

线形インデックス,,行列または多配列として指定し。。

データ::单身的|双倍的|int8|INT16|INT32|INT64|UINT8|UINT16|UINT32|Uint64

出力引数

すべて折りたたむ

行のスカラーベクトル,行列または元配列として返され。のサイズは入力印第安と同じサイズ。

データ::双倍的

列のスカラーベクトル,行列または元配列として返され。上校のサイズは入力印第安と同じサイズ。

データ::双倍的

多元添字スカラー,,行列多次配列として返されますます各配列配列配列i1,i2,…,在のサイズは入力印第安と同じサイズ。

データ::双倍的

ヒント

  • 行列一个について,条件満たす行列要素のインデックス取得取得するはは,,出力出力引数引数ををををををを寻找を使用。インデックスを取得するに,出力引数をををををつつつ指定し关数关数寻找を使用ます。たとえば,[row,col] = ind2sub(size(a),查找(a> 5))[row,col] =查找(a> 5)と同じになります。

アルゴリズム

配列一个について,[i1,…,in] = ind2sub(size(a),ind)である场合,のkについてa(i1(k),…,in(k))= a(ind(k))です。

拡张机能

R2006Aよりに导入导入