hi, i'm a beginner and now i'm writing a program, but there is a problem. i have a 13*1 matrix, but i want just the odd rows, it means 1, 3, 5, 7, 9, 11, and 13. how can i omit the even rows? i want a rule so that i can use it for other long matrixes! please help :D

 採用された回答

Laura Proctor
Laura Proctor 2012 年 2 月 16 日

0 投票

If your matrix is called m, you can reference the odd rows like this:
m(1:2:end,:)
If it is always going to be a vector (an nx1 or 1xn matrix), then you can use linear indexing and this reference:
m(1:2:end)
If you want to overwrite your vector, just reassign it to the original variable name:
m = m(1:2:end)

1 件のコメント

Anahita Gh
Anahita Gh 2012 年 2 月 16 日
tnx :)

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

その他の回答 (1 件)

Oleg Komarov
Oleg Komarov 2012 年 2 月 16 日

0 投票

I suggest you to read the chapter "Matrices and Arrays" from the Getting Started guide.
For matrix A:
A(1:3:end,:)

1 件のコメント

Anahita Gh
Anahita Gh 2012 年 2 月 16 日
tnx :)

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

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

タグ

質問済み:

2012 年 2 月 16 日

編集済み:

Jan
2013 年 10 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by