A general question about intersect

1 次查看(过去 30 天)
Hello -
I have a general question. I can provide specifics if needed.
How is it possible for
size(intersect(MyData(i),MyData))
to be not equal to
size(i)
Put another way, how can the intersect of a subset of a vector and the original vector not be the entire subset of the vector? I seem to have a case where it is and I can't understand how that can be. It seems impossible, by defintion.
Thanks.

采纳的回答

Walter Roberson
Walter Roberson 2019-11-10
  1. Duplicates in the data. An element that occurs more than once among the MyData(i) will only result in one output
  2. Duplicates in the i values have the same effect.
  3. NaN == NaN is never true, so the results of intersect() remove all NaN

更多回答(1 个)

Image Analyst
Image Analyst 2019-11-10
Because one element, MyData(i), does not necessarily match every single element of MyData. For example 2 will match only 1 element of this three element vector [1, 2, 3]. It matches only element #2 and does not match element #1 or element #3 so the length will be only 1, NOT 3.
  1 个评论
David McVea
David McVea 2019-11-10
Thanks for your reply - I'm not sure this is exactly what I'm asking. from your example,
length(2) is 1, and length(intersect(2,[1 2 3]) is 1. So length(MyData(i)) equals length(i)
I think you are answering how
length(intersect(MyData(i),MyData))
can be different from
length (MyData)
I'm asking how
length(intersect(MyData(i),MyData))
can be different from
length(i)
Thanks.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by