我有一个大的2D numpy矩阵,需要做得更小(例如:从100x100转换为10x10).
我的目标是基本上:打破的n×n矩阵为更小的m×m矩阵,平均细胞在这些MXM切片,然后构造一个新的(较小的)矩阵这些的MXM切片.
我正在考虑使用类似的东西matrix[a::b, c::d]来提取较小的矩阵,然后平均这些值,但这似乎过于复杂.有没有更好的方法来实现这一目标?
如果这很明显,请原谅我,但我无法从文档中判断使用队列时的输出是否是有序的。也就是说,如果输入 是 ,[1, 2, 3]输出将是f(1), f(2), f(3),或者它们可能是无序的?
编辑:我知道输入是在 FIFO 中处理的。但先进先出检索就一定能保证结果也按顺序返回吗?
我必须生成列表中所有两对项目组合。现在,我知道有两种方法可以实现此目的:嵌套 for 循环和 python 的内置itertools:
from itertools import combinations
foo = [1, 2, 3, 4]
for i in xrange(len(foo)):
for j in xrange(i + 1, len(foo)):
print foo[i], foo[j]
for c in combinations(foo, 2):
print c
Run Code Online (Sandbox Code Playgroud)
我的问题是:使用其中一种比另一种有什么显着的优势吗?
自从我升级到Netbeans 7后,GUI(和图标)的字体大小要小得多.有没有办法增加他们的尺寸?
我有一个循环正在检查计算结果为的值的第一个实例True:
for i in l:
if fun(i):
return i
return None
Run Code Online (Sandbox Code Playgroud)
我想使用多处理池来加快速度,但我的理解是池只会fun在l. 有没有办法在池化时进行某种“短路”?
我正在寻找一个生成器函数,在给定最小距离的情况下返回沿直线的点k。这很简单,可以使用 numpy 完成,如下所示:
points = np.linspace(start, end, k)
Run Code Online (Sandbox Code Playgroud)
然而,我想生成点作为一种“增加分辨率”,这样在从 0 到 1 的线上,生成器将产生:
1/2, 1/4, 3/4, 1/8, 3/8, 5/8, ...
Run Code Online (Sandbox Code Playgroud)
同样,这很容易递归地完成(只需接受端点并在每一半上调用 self ),但我想要一个生成器,它可以实现相同的事情,而不必从一开始就用所有内容填充数组,并且没有重复点。
最好的方法是什么?
python ×5
numpy ×2
arrays ×1
geometry ×1
list ×1
loops ×1
matrix ×1
netbeans ×1
netbeans-7 ×1
performance ×1