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!