Setdiff n intersect question

Hi,
I have two dataset.
1)
  • Shop# - floor#
  • 321 - 4
  • 321 - 2
  • 321 - 3
  • 322 - 0
  • 322 - 2
2)
  • shop# - floor#
  • 322 - 1
  • 322 - 0
  • 322 - 2
if i do intersect of those two, i expect following, but i get just first row. WHy? 3)
  • shop# - floor#
  • 322 - 0
  • 322 - 2

 Accepted Answer

>> a=[321 4;321 2;321 3;322 0;322 2];
>> b=[322 1;322 0;322 2];
>> intersect(a, b, 'rows')
ans =
322 0
322 2

8 Comments

With 'rows' i get following error
Error using getvarindices (line 25) Unrecognized variable name 'rows'.
Error in dataset/intersect (line 47) avars = getvarindices(a,vars,false);
Check for typos, e.g., not enclosing 'rows' in quotes. You should be able to verify by direct copy/paste that Guillaume's code works as shown.
i did. Something is wrong with 322, 2 entry. When i type the set in from commandline, it works with 'rows'. When i convert my program data into double and try it with 'rows' it returns only '322, 0' and not the second line ..:(
Can you paste your program here, then?
Otherwise, it's difficult to say what's wrong with it.
yes i understand....but i think i figured. My format was set to shortG so one 2 is 2.995 and the other is 2 i will make take the 'floor' n see if that helps if it does not, i will paste the code
ok, so i had to round floor number to get it to work... thanks.
@Neesha, if you got it work, you should accept Guillaume's answer
i accepted it, but i did not end up using 'rows', it worked without it as problem was coming from somewhere else

Sign in to comment.

More Answers (0)

Categories

Asked:

on 21 Aug 2014

Commented:

on 22 Aug 2014

Community Treasure Hunt

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

Start Hunting!