How to delete the row from cell array?
古いコメントを表示
I have a cell arraywhich has 10*6 matrix in it. How can I delete a row from the matrix? thanks in advance.
採用された回答
その他の回答 (3 件)
Azzi Abdelmalek
2013 年 7 月 10 日
row=2
A(row,:)=[]
6 件のコメント
siddhesh rane
2013 年 7 月 10 日
Azzi Abdelmalek
2013 年 7 月 10 日
row=2;
out=cellfun(@(x) x(setdiff(1:10,row),:),A,'un',0)
Shihao Wang
2018 年 4 月 26 日
Thanks from 2018
Mehdi Maadir
2021 年 7 月 9 日
Thanks from 2021
Tong Zhao
2022 年 6 月 16 日
Thanks from 2022
Kris Hoffman
2022 年 7 月 5 日
Thanks from 2026
You can index out the rows like any standard array (the following code removes the second row):
x = {1 2 3; 4 5 6; 7 8 9}
x =
[1] [2] [3]
[4] [5] [6]
[7] [8] [9]
y = x([1 3],:)
y =
[1] [2] [3]
[7] [8] [9]
3 件のコメント
siddhesh rane
2013 年 7 月 10 日
John
2013 年 7 月 10 日
Ok I think I understand, you have a cell array that looks like the following:
A = {rand(5), 1}
A =
[5x5 double] [1]
You want to remove a row from the matrix in the first element of A. You can do the following:
A{1} = A{1}([1 2 4 5],1);
(this will remove the third row). Alternatively you can use Azzi Abdelmalek's method shown below:
A{1}(3,:) = []
I think this is what you are looking for.
siddhesh rane
2013 年 7 月 10 日
カテゴリ
ヘルプ センター および File Exchange で Data Type Conversion についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!