我正在遍历一个numpy数组,通过每个元素应用一个函数,并将新值添加到列表中,这样我就可以保留原始数据。
问题是:它有点慢。
有没有更好的方法(不更改原始数组)?
{{1}}
答案 0 :(得分:2)
你可以这样做:
new_data = original_data/original_data.max()
Numpy已经按元素执行此操作。
在您的代码中有一个额外的缓慢来源:每次调用max(original_data)
都会导致对来自original_data
的所有元素进行迭代,从而使您的成本与{{{{} 1}}。