不知道数组有没有占位符这样一个概念

2018-10-07 10:57:45 +08:00
 songdg
arr = np.array([None,3,4])用 None 占一个位没问题,但用 np.max(arr)却不能求最大值,提示 TypeError: '>=' not supported between instances of 'NoneType' and 'int'。我想知道有没有一个占位符但不参与运算。
3027 次点击
所在节点    Python
7 条回复
sww4718168
2018-10-07 10:59:11 +08:00
np.nan ?
nroskill
2018-10-07 13:50:23 +08:00
求最大的话还是加个 INT_MIN 吧
不知道你的具体需求是啥,感觉像走了歪路
ghhardy
2018-10-07 13:58:31 +08:00
@nroskill 哈哈,也许是应该用 mask 实现的东西
enzo113
2018-10-07 18:31:54 +08:00
可以试试 -float("inf")
PythonAnswer
2018-10-07 21:45:13 +08:00
一般要干掉 nan 才好计算,这是数据清理的基本要求,框架不会自动帮你省略。
Belmode
2018-10-08 08:12:12 +08:00
为什要占位呢?直接过滤出数据,再处理不久行了
songdg
2018-10-10 19:00:08 +08:00
numpy.nanmin、numpy.nanmax 解决了这个问题。

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

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

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

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

© 2021 V2EX