Issues with intersect function
1 view (last 30 days)
Show older comments
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 Comment
dpb
on 17 Nov 2014
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.
Accepted Answer
suren
on 22 May 2018
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 Comments
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!