gpt4 book ai didi

python - 在python中更改数组的某些索引的值

转载 作者:太空宇宙 更新时间:2023-11-04 07:14:01 25 4
gpt4 key购买 nike

我正在尝试这个简单的代码来搜索数组并将大于 1 的元素替换为 1:

import numpy as np

j = np.array([[1],[3],[1],[0],[9]])

for x in j:
if abs(x) > 1 :
j[x] = 1

但是我得到这样的错误:

IndexError: index 9 is out of bounds for axis 0 with size 5

最佳答案

如果你所做的只是在 absolute(j[i]) 大于 1 到 1 时生成所有值,那么 numpy 内置了这个功能,它非常简单,可以在一行并且比任何 python 循环都更有效:

j[np.absolute(j) > 1] = 1

向您展示这是如何工作的:

#made 3 a negitive value to prove absolute works.
j = np.array([[1],[-3],[1],[0],[9]])

j[np.absolute(j) > 1] = 1

j 现在是:

[[1]
[1]
[1]
[0]
[1]]

关于python - 在python中更改数组的某些索引的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54962991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com