Select の条件部分に Not を入れてはいけないのでしょうか.うまく行かない理由が分かりません.
たとえば
Select[Range[10], PrimeQ]
Select[Range[10], ! PrimeQ]
にたいしてはアウトプットが{2,3,5,7}と{}となり,
2つ目が意図したものになりません.
Select[{b, a, d, c, e}, (# == a) &]
Select[{b, a, d, c, e}, (! (# == a)) &]
にはアウトプットが{a}と{}となり,
これも Not (!) を使った2つ目が意図とはちがいます.
ちなみに
Select[Range[10], (# == 4) &]
Select[Range[10], (! (# == 4)) &]
だと意図した通りに
{4}と{1,2,3,5,6,7,8,9,10}となります.どうして?

ちなみに問題回避法としては !MemberQ というのを使いました.もっとマシな方法あれば知りたし.