小编ast*_*ada的帖子

旋转numpy 2D数组

我有一组灰度图像作为2D numpy数组.

我需要围绕不同的浮动角度的一个点(在它们内部)旋转图像.旋转不需要到位,我将允许(当然,如果我到目前为止解释得很好)进行插值.

我想保持笨拙,因为我需要对结果进行数值运算,但我也可以(如果那是不可能的话)允许进/出; 例如我尝试使用PIL,即Image.rotate(theta)但不明白如何将其应用于我的数组,以及如何获取数组.

谢谢您的意见.

python arrays numpy image-processing rotation

15
推荐指数
1
解决办法
2万
查看次数

在python glob中支持扩展

我有python 2.7,我试图发出:

glob('{faint,bright*}/{science,calib}/chip?/')
Run Code Online (Sandbox Code Playgroud)

我没有获得匹配,但是从shell echo {faint,bright*}/{science,calib}/chip?给出:

faint/science/chip1 faint/science/chip2 faint/calib/chip1 faint/calib/chip2 bright1/science/chip1 bright1/science/chip2 bright1w/science/chip1 bright1w/science/chip2 bright2/science/chip1 bright2/science/chip2 bright2w/science/chip1 bright2w/science/chip2 bright1/calib/chip1 bright1/calib/chip2 bright1w/calib/chip1 bright1w/calib/chip2 bright2/calib/chip1 bright2/calib/chip2 bright2w/calib/chip1 bright2w/calib/chip2
Run Code Online (Sandbox Code Playgroud)

我的表情有什么问题?

python bash shell glob expansion

14
推荐指数
3
解决办法
3611
查看次数

Python:如何制作具有相同*大小*bins的直方图

我有一组数据,并希望对其进行直方图.我需要这些垃圾箱具有相同的尺寸,我的意思是它们必须包含相同数量的物体,而不是具有等间距垃圾箱的更常见(numpy.histogram)问题.这自然会出现在箱子宽度的费用上,这可能 - 并且通常会 - 是不同的.

我将指定所需的箱数和数据集,获得返回的箱边.

Example:
data = numpy.array([1., 1.2, 1.3, 2.0, 2.1, 2.12])
bins_edges = somefunc(data, nbins=3)
print(bins_edges)
>> [1.,1.3,2.1,2.12]
Run Code Online (Sandbox Code Playgroud)

所以箱子都包含2个点,但它们的宽度(0.3,0.8,0.02)是不同的.

有两个限制: - 如果一组数据相同,则包含它们的bin可能更大. - 如果有N个数据并且要求M个箱,则如果N%M不为0,则将有N/M个箱加一个.

这段代码是我编写的一些代码,它适用于小型数据集.如果我有10**9 +分并希望加快这个过程怎么办?

  1 import numpy as np
  2 
  3 def def_equbin(in_distr, binsize=None, bin_num=None):
  4 
  5     try:
  6 
  7         distr_size = len(in_distr)
  8 
  9         bin_size = distr_size / bin_num
 10         odd_bin_size = distr_size % bin_num
 11 
 12         args = in_distr.argsort()
 13 
 14         hist = np.zeros((bin_num, bin_size))
 15 
 16         for …
Run Code Online (Sandbox Code Playgroud)

python histogram spacing binning

9
推荐指数
2
解决办法
7997
查看次数

Matplotlib保存到PDF的不同页面

我有一个冗长的情节,由几个水平子图组成一个列组成.

当我调用fig.savefig('what.pdf')时,生成的输出文件显示所有填充到单个页面上的图.

问题:有没有办法告诉savefig保存任何数量(可能是自动确定的)pdf页面?

如果可能的话,我宁愿避免多个文件,然后是os.system('merge ...').

python pdf pagination matplotlib

8
推荐指数
1
解决办法
1万
查看次数

确定两个numpy数组在Python中相交的参数

我有两个数组,说:

a, b = np.array([13., 14., 15., 32., 33.]), np.array([15., 16., 17., 33., 34., 47.])
Run Code Online (Sandbox Code Playgroud)

我需要找到b中不存在的所有元素的索引.在上面的例子中,结果将是:

[0, 1, 3]
Run Code Online (Sandbox Code Playgroud)

因为a [0],a [1]和a [3]是13.,14和32.,它们在b中不存在.请注意,我不知道13,14和32的实际值.(在这种情况下,我可以使用set(a).difference(set(b))).我真的只对指数感兴趣.

如果可能,答案应该是"矢量化",即不使用for循环.

python arrays indexing numpy set

6
推荐指数
1
解决办法
3232
查看次数

Awk:从许多不同的文件中提取不同的列

文件示例

I have a 3-10 amount of files with:

 - different number of columns
 - same number of rows
 - inconsistent spacing (sometimes one space, other tabs, sometimes many spaces) **within** the very files like the below


>      0    55.4      9.556E+09   33
>      1     1.3      5.345E+03    1
>        ........
>     33   134.4      5.345E+04  932
>
       ........
Run Code Online (Sandbox Code Playgroud)

我需要从file1获取列(例如)1,从file2获取第3列,从file3获取第7列,从file4获取第1列,并将它们并排放入单个文件中.

试验1:不工作

paste <(cut -d[see below] -f1 file1) <(cut -d[see below] -f3 file2) [...]
Run Code Online (Sandbox Code Playgroud)

分隔符是'或空的.

试用版2:使用2个文件但不使用多个文件

awk '{
     a1=$1;b1=$4;
     getline <"D2/file1.txt";
     print …
Run Code Online (Sandbox Code Playgroud)

awk file

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

如何将关键字列表传递给pathos.multiprocessing?

我正在使用pathos.multiprocessing来并行化需要使用实例方法的程序.这是一个最小的工作示例:

import time
import numpy as np
from pathos.multiprocessing import Pool, ProcessingPool, ThreadingPool

class dummy(object):
    def __init__(self, arg, key1=None, key2=-11):

        np.random.seed(arg)

        randnum = np.random.randint(0, 5)

        print 'Sleeping {} seconds'.format(randnum)
        time.sleep(randnum)

        self.value = arg
        self.more1 = key1
        self.more2 = key2

args = [0, 10, 20, 33, 82] 
keys = ['key1', 'key2']
k1val = ['car', 'borg', 'syria', 'aurora', 'libera']
k2val = ['a', 'b', 'c', 'd', 'e']
allks = [dict(zip(keys, [k1val[i], k2val[i]])) for i in range(5)]

pool = ThreadingPool(4)
result = pool.map(dummy, args, …
Run Code Online (Sandbox Code Playgroud)

python dictionary multiprocessing keyword-argument pathos

3
推荐指数
1
解决办法
1056
查看次数

Bash:如何引用其名称中包含另一个变量的变量?

我有一个运行变量,让我们说它的值是INDEX = 1122当前的迭代.我已经出口:

export PRO"$INDEX"=/some/fancy/dirry

现在我想引用这个变量,但如果我这样做:

echo $"PRO$INDEX"

我明白了:

PRO1122

相反,我想看到:

/some/fancy/dirry

很像是结果echo $PRO1122.

但是,我当然不能1122在循环中硬编码值.

variables syntax bash

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