在 Python 中,矩阵或向量可以在中括号中判断的吗?

2018-08-21 09:56:35 +08:00
 z0z

preds 的原值是

preds= [[0.46720526]

[0.99414194]

[0.26025357]

[0.99096197]

[0.99137177]]

经过下面的操作之后

preds[preds <= 0.5] = 0

preds[preds > 0] = 1

就把小于 0.5 的设置为 0,大于 0 的设置为 1 了

[[0.]

[1.]

[0.]

[1.]

[1.]]

请问这样的神操作学名叫什么呢?是什么原理呢?

2377 次点击
所在节点    Python
5 条回复
ipwx
2018-08-21 10:02:03 +08:00
preds 的原值八成不是 list of list,是 numpy.array([[..]])。

numpy.array 重写了 __getitem__。
ipwx
2018-08-21 10:02:23 +08:00
重写了 __getitem__ 和 __setitem__
princelai
2018-08-21 10:08:01 +08:00
justou
2018-08-21 10:15:29 +08:00
numpy 里面叫 fancy indexing, 翻译成花式索引
z0z
2018-08-21 10:34:27 +08:00
@ipwx
@princelai
@justou 仰慕三位大神,表示感谢,我去学习学习

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/481690

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX