How to split an array?
조회 수: 6 (최근 30일)
이전 댓글 표시
Hi everyone,
May someone help me.
I have data in column and want to split this in two set by the condition of third point:
For example,
a=[1,4,6,9,13,17,20];
If we have 7 as a spliting number than the output is
[1,4,6]
and
[9,13,17,20]
I need generazlied function to compute this.
댓글 수: 0
채택된 답변
Star Strider
2020년 9월 11일
편집: Star Strider
2020년 9월 11일
Use logical indexing‘:
a=[1,4,6,9,13,17,20];
b1 = a(a<7)
b2 = a(a>7)
producing:
b1 =
1 4 6
b2 =
9 13 17 20
EDIT —
A ‘generalized function’ version would be something like this:
vsplit = @(v,n) {v(v<n); v(v>n)};
b = vsplit(a,7)
b1 = b{1}
b2 = b{2}
The result is the same.
댓글 수: 3
Star Strider
2020년 9월 12일
This could work:
if (all(a > c)) || (all(a < c))
return
end
I tested that as well as I could. I runs without error and (if I understand correctly what you want to do) produces the correct result.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
