首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Numpy:比较另一个数组中的数组元素

Numpy:比较另一个数组中的数组元素
EN

Stack Overflow用户
提问于 2017-09-08 00:33:37
回答 1查看 48关注 0票数 0

我有一个numpy数组

代码语言:javascript
复制
X = [[1,2], [3,4], [5,6], [1,2], [5,6]]

我想要一个numpy数组Y = [1, 2, 3, 1, 3],其中[1,2]替换为1[3,4]替换为2,依此类推。这是一个非常大的(想想数百万) X。

直觉是Y[X == [1,2]] = 1。但这并不管用。

EN

回答 1

Stack Overflow用户

发布于 2017-09-08 07:56:05

直觉就是Y[X == [1,2]] = 1__。但这并不管用。

下面是如何使其工作的方法:

代码语言:javascript
复制
Y = np.empty(len(X), dtype=np.int)
Y[np.all(X == [1, 2], 1)] = 1

要处理所有可能的值:

代码语言:javascript
复制
s = set(map(tuple, X))
r = np.arange(1, len(s) + 1) # or assign whatever values you want
cond = [np.all(X == v, 1) for v in s]
Y = np.dot(r, cond)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46101296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档