您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

从Numpy矩阵构造Python集

从Numpy矩阵构造Python集

如果需要一组元素,这是另一种可能更快的方法

y = set(x.flatten())

:之间执行比较后x.flatx.flatten()x.ravel()一个10x100阵列上,我发现,它们都在大约相同的速度来执行。对于3x3阵列,最快的版本是迭代器版本:

y = set(x.flat)

我建议这样做,因为它是内存消耗较少的版本(它随阵列的大小扩展得很好)。

:还有一个NumPy函数可以执行类似的操作:

y = numpy.unique(x)

这确实会产生一个NumPy数组,该元素具有与相同的元素set(x.flat),但作为NumPy数组。这是非常快的(快将近10倍),但是如果需要set,则执行set(numpy.unique(x))的过程将比其他过程要慢一些(构建集合会带来很大的开销)。

python 2022/1/1 18:26:08 有156人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶