Issues with intersect function

조회 수: 2 (최근 30일)
Davin
Davin 2014년 11월 17일
답변: suren 2018년 5월 22일
Hello,
I am using intersect function with this following command :
[c, ia ib] = intersect(Signal,VIndex)
VIndex = [VIndex(ib,1),VIndex(ib,2)]
>> size(Signal)
ans =
2514 2
>> size(VIndex)
ans =
2517 2
The problem with this, is that i am getting this following error :
Index exceeds matrix dimensions.
the issue is that the command that my ib is giving me something like this in the first columns :
2572
4004
4
5
6
7
8
9
10
I would expect it to start with 4 and not the first 2 rows, thats why i am getting this error.
I removed the first 2 columsn manually, and it works well. But when executed, it keeps putting these 2 numbers in the first 2 rows...
Anyone encountered this?
Thank you
D
  댓글 수: 1
dpb
dpb 2014년 11월 17일
Unless it's been changed, the above shouldn't even work at all; w/ R2012b for two arrays w/o the 'rows' optional argument I get
>> a=randi(4,3,2);b=randi(4,5,2);
>> [c,ia,ib]=intersect(a,b)
Error using intersect>intersectlegacy (line 173)
A and B must be vectors, or 'rows' must be specified.
Error in intersect (line 90)
[varargout{1:nlhs}] = intersectlegacy(varargin{:});
>>
That you "removed the first 2 columns manually" (albeit unspecified which two I presume means the first from each of the two input arrays??) I'd expect it to function correctly.
As is, I've no idea what a current release does; doc doesn't indicate anything different. It indicates that ia, ib are vectors.

댓글을 달려면 로그인하십시오.

채택된 답변

suren
suren 2018년 5월 22일
Probably you have used 'intersect' as a variable prior. Because I had the same issue and I searched my way to this thread. LOL. I rectified mine. I hope it helps someone in the future. Clear variable 'intersect'

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by