标签: set-difference

在Python中查找两个大型数组(矩阵)之间的集合差异

我有两个大的二维数组,我想找到它们的集合差异,将它们的行作为元素.在Matlab中,这个代码就是setdiff(A,B,'rows').数组足够大,我想到的明显的循环方法需要花费太长时间.

python numpy set-difference

11
推荐指数
2
解决办法
9295
查看次数

列表容器上的std :: set_difference

我正在尝试调用set_difference函数,并将结果放在std :: list上.从理论上讲,可以在任何已分类的容器上执行此操作,对吗?

list<int> v;         

list<int> l1;  
list<int> l2;                   

list<int>::iterator it;

//l1 and l2 are filled here

l1.sort();
l2.sort();

it=set_difference(
   l1.begin(),
   l1.end(), 
   l2.begin(),
   l2.end(), 
   v.begin()
);
Run Code Online (Sandbox Code Playgroud)

然而,v作为空列表返回.是因为我不能在列表容器上使用它吗?

c++ stl list set-difference

9
推荐指数
2
解决办法
2010
查看次数

两组间隔的差异

我正在尝试编写一些代码来计算两组间隔A - B之间的差异,间隔端点是整数,但我很有希望得到有效的解决方案,任何建议都会得到很多赞赏的例子:[(1,4) ),(7,9)] - [(3,5)] = [(1,3),(7,9)]

这是迄今为止我尝试过的最好的(两个列表已经排序)

class tp():
   def __repr__(self):
       return '(%.2f,%.2f)' % (self.start, self.end)
   def __init__(self,start,end): 
       self.start=start
       self.end=end



z=[tp(3,5)] #intervals to be subtracted
s=[tp(1, 4)),tp(7, 9), tp(3,4),tp(4,6)]

for x in s[:]:
   if z.end < x.start:
    break
   elif z.start < x.start and z.end > x.start and z.end < x.end:
    x.start=z.end
   elif z.start < x.start and z.end > x.end:
    s.remove(x)
   elif z.start > x.start and z.end < x.end:
    s.append(tp(x.start,z.start))
    s.append(tp(z.end,x.end))
    s.remove(x)
   elif z.start > x.start and z.start < …
Run Code Online (Sandbox Code Playgroud)

python algorithm intervals set-difference

9
推荐指数
1
解决办法
1784
查看次数

不在SQL语句中?

我在excel中设置了大约5000个ID,在表格中我有大约30000个ID.如果我在SQL语句中使用"In"条件,那么我从Excel中获得了大约4300个ID.但是,如果我使用Excel ID中的"Not In".我已经获得了大约25000多条记录.我只是想知道我在表中缺少Excel ids.

如何为此编写sql?

示例:Excel ID是

 1,
 2,
 3,
 4,
 5,
 6,
 7,
 8,
 9,
10,
Run Code Online (Sandbox Code Playgroud)

表有ID

 1,
 2,
 3,
 4,
 6,
 8,
 9,
11,
12,
14,
15
Run Code Online (Sandbox Code Playgroud)

现在我想5,7,10从Excel中获取缺少表格的值?

更新:

我在做什么

SELECT  [GLID]      
  FROM [tbl_Detail] 
  where datasource = 'China' and  ap_ID  not in (5206896,
5206897,
5206898,
5206899,
5117083,
5143565,
5173361,
5179096,
5179097,
5179150)
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server set-difference notin

7
推荐指数
2
解决办法
4万
查看次数

如何计算emacs lisp中两组之间的差异,这些集应该是列表

如何计算Emacs Lisp中两组之间的差异?这些集应该是列表.该程序应该非常简单和简短,否则我将无法理解它.我是个新人.

谢谢

lisp elisp set set-difference

7
推荐指数
2
解决办法
2189
查看次数

试图理解sql查询中的"除了所有"

我遇到了这个例子,我不明白这意味着什么.

(SELECT drinker FROM Frequents)
     EXCEPT ALL
(SELECT drinker FROM Likes);
Run Code Online (Sandbox Code Playgroud)

关系:频繁(饮酒者,酒吧),喜欢(饮酒者,啤酒)

在这种情况下,ALL会做什么?结果与下面的查询有何不同?

(SELECT drinker FROM Frequents)
     EXCEPT
(SELECT drinker FROM Likes);
Run Code Online (Sandbox Code Playgroud)

sql set-difference set-operations intersect set-intersection

7
推荐指数
3
解决办法
1万
查看次数

JQ: setdiff of two arrays

If I have an object with two arrays containing unique values in it

{"all":["A","B","C","ABC"],"some":["B","C"]}
Run Code Online (Sandbox Code Playgroud)

How can I find .all - .some?

在这种情况下,我正在寻找 ["A","ABC"]

set-difference jq

7
推荐指数
1
解决办法
3232
查看次数

如何在没有在MATLAB中排序的情况下从A中删除集合A和B的交集?

两个矩阵,A和B:

A = [1 2 3
     9 7 5
     4 9 4
     1 4 7]

B = [1 2 3
     1 4 7]
Run Code Online (Sandbox Code Playgroud)

矩阵B中的所有行矩阵A的成员我想删除一个从A共同行和B不排序.

我尝试过setdiff(),但这会对输出进行排序.

对于我的特定问题(蛋白质结构中的原子坐标),保持行的有序完整性很重要.

sorting matlab set-difference

6
推荐指数
1
解决办法
1937
查看次数

简单的方法找到2个字典之间的"关键"差异?

我需要比较2个字典,以便在一个字典中找到不在另一个字典中的密钥集.

我知道Python 设置对象支持:

set3=set1-set2
Run Code Online (Sandbox Code Playgroud)

但我做不到:

dict3=dict1-dict2
Run Code Online (Sandbox Code Playgroud)

要么:

missingKeys=dict1.keys()-dict2.keys()
Run Code Online (Sandbox Code Playgroud)

(我对最后一点感到有些惊讶,因为在Java中,键是一个Set对象.)一种解决方案是:

missingKeys=set(dict1.keys())-set(dict2.keys())
Run Code Online (Sandbox Code Playgroud)

有没有更好或更简洁的方法来做到这一点?

python dictionary set set-difference

6
推荐指数
2
解决办法
5145
查看次数

如何在 C++ 中获取(无序)集合差异或对称差异?

我无法推断我可以使用文档中的std::set_difference,因为它说集合应该排序,这意味着它们不是集合,而是列表。此外,所有示例都是关于有序列表,而不是集合。

如何知道真相?

c++ set set-difference

6
推荐指数
1
解决办法
6146
查看次数