# how to use nested for loop by grabbing one column and subtracting another column.

2 ビュー (過去 30 日間)
tonyrodriguez 2018 年 3 月 29 日

so i have this huge file that is 1478 by 1236 matrix and i want to calculate the xslope and yslope as follows
##### 1 件のコメント-1 件の古いコメントを表示-1 件の古いコメントを非表示
tonyrodriguez 2018 年 3 月 29 日
so far i have this
cellsize = 9.47733915533982;
xslope = zeros(1478,1236);
n = length(xslope);
for i = 1:n for j = 1:1:n
xslope(i,j) = ( z(i,j+1)-z(i,j) )/cellsize;
end
end
xslope
it tells me i have a matrix dismension.. can someone help me fix this or tell me how i can do it?

サインインしてコメントする。

### 回答 (1 件)

Roger Stafford 2018 年 3 月 29 日

Your n value will be 1478, but in z(i,j+1) you have allowed the j+1 index to get as large as 1479 because you have "for j=1:1:n" and its maximum value should be only 1236. Hence the error message. You need to do
[n,m] = size(z)
and
for j = 1:m-1

サインインしてコメントする。

### カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

### Community Treasure Hunt

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

Start Hunting!

Translated by