作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 Python 中进行一些数据处理,并且我有一个嵌套循环可以进行一些算术计算。内部循环执行了 20.000 次,因此以下代码需要很长时间:
for foo in foo_list:
# get bar_list for foo
for bar in bar_list:
# do calculations w/ foo & bar
这个循环使用 Numpy 或 Scipy 会更快吗?
最佳答案
使用 Numpy:
import numpy as np
foo = np.array(foo_list)[:,None]
bar = np.array(bar_list)[None,:]
然后
foo + bar
或其他操作使用相应的结果创建一个数组 len(foo) * len(bar)
。
例子:
>>> foo_list = [10, 20, 30]
>>> bar_list = [4, 5]
>>> foo = np.array(foo_list)[:,None]
>>> bar = np.array(bar_list)[None,:]
>>> 2 * foo + bar
array([[24, 25],
[44, 45],
[64, 65]])
关于python - 是否可以进一步优化此数字运算算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12841574/
我有这个: const {ops} = getOplogStreamInterpreter(strm); ops.del.subscribe(v => { console.log('delete
我四处搜索,据我所知,POST 表单请求已被限制为 10MB (http://golang.org/src/net/http/request.go#L721)。 如果我要在我的 ServeHTTP 方
我是一名优秀的程序员,十分优秀!