相关疑难解决方法(0)

如何在Numpy中就地扩展数组?

目前,我有一些像这样的代码

import numpy as np
ret = np.array([])
for i in range(100000):
  tmp =  get_input(i)
  ret = np.append(ret, np.zeros(len(tmp)))
  ret = np.append(ret, np.ones(fixed_length))
Run Code Online (Sandbox Code Playgroud)

我认为这个代码效率不高,因为np.append需要返回数组副本而不是修改ret就地

我想知道我是否可以使用extend像这样的numpy数组:

import numpy as np
from somewhere import np_extend
ret = np.array([])
for i in range(100000):
  tmp =  get_input(i)
  np_extend(ret, np.zeros(len(tmp)))
  np_extend(ret, np.ones(fixed_length))
Run Code Online (Sandbox Code Playgroud)

这样extend会更有效率.有没有人有这个想法?谢谢!

python arrays numpy scipy

31
推荐指数
3
解决办法
4万
查看次数

python numpy数组追加在.py文件中不起作用,但在终端中起作用

我正在尝试使用 np.append 附加到一个 numpy 数组。

例如,

a = np.array([1])

np.append(a, [2])
Run Code Online (Sandbox Code Playgroud)

此代码在终端中运行良好(结果是 array([1, 2])),但是当我运行包含相同代码的 .py 文件时它不起作用。当我在附加 [2] 后打印 a 时,它仍然是 [1]。

这是我的 test.py 文件的代码:

import numpy as np

a = np.array([1])
print(a)
np.append(a, [2])
print(a)
Run Code Online (Sandbox Code Playgroud)

这是使用终端运行它的结果:

python test.py
[1]
[1]
Run Code Online (Sandbox Code Playgroud)

没有错误的错误结果。有谁知道可能是什么问题?

python arrays numpy append

4
推荐指数
1
解决办法
8583
查看次数

标签 统计

arrays ×2

numpy ×2

python ×2

append ×1

scipy ×1