How to eliminate the repeated number?

2 次查看(过去 30 天)
For example,
number= 1: 10;
t=[1 3 5 7];
What I want to keep is [2 4 6 7 10];
how to do that?
assuming t and number have different dimensions.
In short, I want number array to have no same digits of t.
Thanks

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2014-8-13
编辑:Azzi Abdelmalek 2014-8-13
number= 1: 10;
t=[1 3 5 7];
out=setdiff(number,t)

更多回答(1 个)

Geoff Hayes
Geoff Hayes 2014-8-13
tabw - consider using intersect. It will allow you to determine which values of t are in number, and then you can remove those common to both from number. Try the following
x = 1:10;
t = [1 3 5 7];
[common,indcsT,indcsX] = intersect(t,x)
% common is a vector of all values that are common to both t and x
% indcsT is a vector of indices into t of all common values
% indcsX is a vector of indices into x of all common values
% now remove the common elements from x
x(indcsX) = [];
The update x becomes
x =
2 4 6 8 9 10
It is slightly different from your example, but follows your instructions on wanting the first array to have no same digits as t.

类别

Help CenterFile Exchange 中查找有关 Operators and Elementary Operations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by