Pull a conditional subset of a matrix
이전 댓글 표시
Hi guys I have a matrix and I want to pull a subset matrix but only with the numbers whose last digit is one. EX a= 00110, 01000, 01011, 01101. thus b= 01011, 01101
댓글 수: 4
madhan ravi
2018년 11월 2일
편집: madhan ravi
2018년 11월 2일
More explanation?
Andres Serrano
2018년 11월 2일
Walter Roberson
2018년 11월 2일
Are the entries for the first row '00110' which is to say characters? Are they [0 0 1 1 0] which is to say distinct decimal numbers? Are they 00110 decimal, which would show up as 110, decimal one hundred and ten?
Andres Serrano
2018년 11월 2일
답변 (2개)
Walter Roberson
2018년 11월 2일
a(a(:,end)=='1',:)
댓글 수: 2
Andres Serrano
2018년 11월 2일
Walter Roberson
2018년 11월 2일
You said the entries were characters, and '1' will not == to 1 .
You also specifically wanted the last digit, but if your array were wider than 5 digits then a(:,5) would not be the last digit.
If your values are numeric instead of character, then a(a(:,end)==1,:)
Fulden Buyukozturk
2018년 11월 2일
If a is a matrix of characters, you can do:
a= ['00110'; '01000'; '01011'; '01101'];
i = strfind(a(:,end)', '1');
b = a(i,:);
카테고리
도움말 센터 및 File Exchange에서 Numeric Types에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!