我试图通过一个列表来链接MemberQ
,即:
我有
a={{1, 9}, {2, 5}, {3, 1}, {4, 3}};
b= {1, 5, 2, 6};
理想情况下,我希望有一个线程化且可列出的MemberQ
函数TLMemberQ
来执行以下操作:
TLMember[a,b]
返回{True,True,False,False}
。我怎样才能以最快的速度执行此操作。
注意:Thread@MemberQ
和MemberQ@Thread
都不起作用。 MemberQ
属性为Protected
答案 0 :(得分:6)
此:
MapThread[MemberQ, {a, b}]
看看它的作用:
Trace[
MapThread[MemberQ, {a, b}],
MemberQ
]
(*
{{MemberQ[{1,9},1],True},
{MemberQ[{2,5},5],True},
{MemberQ[{3,1},2],False},
{MemberQ[{4,3},6],False}}
*)
答案 1 :(得分:3)
MemberQ[#[[1]], #[[2]]] & /@ Transpose[{a, b}]