【python – 外部产品的矢量化减少 – NumPy】教程文章相关的互联网学习教程文章

python-numpy.interp和掩码数组【代码】

我正在使用一个numpy蒙版数组来执行一些图像处理.设置了遮罩可处理围绕图像的NoData像素(必要边界,因为这些是地图投影图像,其原点位于无数据像素中). 使用以下代码块,我可以对图像执行高斯拉伸.def gaussian_stretch(input_array, array_mean, array_standard_deviation, number_of_bins, n):shape = input_array.shapeinput_array = input_array.flatten()#define a gaussian distribution, get binned GDF histogramarray_standa...

Python中numpy的应用【代码】

#创建ndarray import numpy as np nd = np.array([2,4,6,11])#numpy中默认ndarray的所有元素的数据类型是相同,如果数据的类型不同,会统一为统一类型,优先级为str>float>int nd # array([2, 4, 6, 11], dtype=<U11)# 使用np创建routines函数创建 # (1)np.one(shape,dtype=None,order=C)创建数组 # 根据所给的形状和类型返回一个元素全部为1的数组。默认numpy.float64类型 # 参数: # shape:定义返回元祖的形状,传入int或者...

python-如何在numpy 2d数组中选择唯一元素的所有位置,并用包围框包围它们?【代码】

我有一个二维的numpy数组,我想找到所有唯一元素的“每个”位置.我们可以使用numpy.unique(numpyarray.)找到唯一的元素.这是棘手的部分.现在,我必须知道每个唯一元素的所有位置.让我们考虑以下示例.array([[1, 1, 2, 2], [1, 1, 2, 2], [3, 3, 4, 4], [3, 3, 4, 4]])结果应该是1, (0,0),(1,1) 2, (0,2),(1,2) 3, (2,0),(3,1) 4, (2,2),(3,3)如何做到这一点以及什么是存储和迭代值的合适方法. 应当注意,所有唯一值...

python-在numpy数组中的已知索引(x,y)周围切片20×20的区域【代码】

我有一个大型的2D numpy数组,我知道一对代表该数组一个元素的索引.我想将此元素和周围的2020区域设置为零;我尝试使用切片技术:s = array[x:10, y:10] s == 0但是,尽管x和y先前已定义,但这是“无效的切片”. 我将不胜感激任何建议,因为我是Python新手,如何才能做到这一点.解决方法: my_array[x - 10:x + 10, y - 10:y + 10] = 0要么s = my_array[x - 10:x + 10, y - 10:y + 10] s[:] = 0

python-线性方程组,使matlab反斜杠和numpy.linalg.solve产生不同的解决方案【代码】

使用numpy 1.3.0和MATLAB 7.9.0时出现以下问题:python代码import numpy as np Lu = [[1.01250000000000,-0.00250000000000000,0,0,-0.00250000000000000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[-0.00250000000000000,1.01250000000000,-0.00250000000000000,0,0,-0.00250000000000000,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,-0.00250000000000000,1.01250000000000,-0.00250000000000000,0,0,-0.00250000000000000,0,0,0,0,0,0,0,0,0,0,...

Python Numpy Memmap矩阵乘法

我试图在两个巨大矩阵(10 * 25,000,000)之间产生通常的矩阵乘法.这样做会耗尽我的记忆力.我如何使用numpy的memmap来处理此问题?这是个好主意吗?我并不担心操作的速度,我只是想要结果,即使这意味着要等待一段时间.谢谢高级! 8 GB RAM,I7-2617M 1.5 1.5 GHz,Windows7 64位.我正在使用所有东西的64位版本:python(2.7),numpy,scipy. 编辑1: 也许h5py是更好的选择?解决方法:您可以尝试使用np.memmap,并一次计算一个元素的1010输出...

Python的Numpy相关错误【代码】

我试图显示两个单独列表之间的相关性.在安装Numpy之前,我分析了世界银行的数据以获取GDP值和互联网用户数量,并将它们存储在两个单独的列表中.这是代码片段.这仅适用于gdp07.实际上,我有更多的清单可以列出更多的年份以及其他数据,例如失业率.import numpy as npfile = open('final_gdpnum.txt', 'r') gdp07 = [] for line in file:fields = line.strip().split()gdp07.append(fields [0]) file2 = open('internetnum.txt', 'r')...

python-熊猫更改默认的numpy数组格式【代码】

有什么方法可以防止熊猫更改numpy数组的默认打印格式? 使用普通的numpy,我得到:>>> numpy.array([123.45, 0.06]) array([ 1.23450000e+02, 6.00000000e-02])导入熊猫后,我得到:>>> numpy.array([123.45, 0.06]) array([ 123.45, 0.06])我可以阻止它作为配置设置吗?我不想用“ foo = np.get_printoptions(); import pandas; np.set_printoptions(** foo)”包装每个“导入熊猫”,但这是我能想到的最好的方法. 照原样,如果我...

python-快速选择行,其中至少N个列在numpy / scipy中为true【代码】

如果我有这个numpy数组:>>> a array([[ 1, 2, 3],[ 4, 4, 6],[ 4, 10, 9]])从条件中至少满足N个许多元素的所有行中选择最快的方法是什么? 例如,选择至少两个数字可被2整除的所有行. 我想出的解决方案是:@ find rows where 2 or more elements are evenly divisible by two N = 2 a[where(array(map(lambda x: sum(x), a % 2 == 0)) >= N)]使用apply_along_axis的替代解决方案是:a[where(sum(numpy.apply_along_axis(lam...

如何将复数从python numpy传递给c(目前尝试使用SWIG)【代码】

我想用python调用带有复数输入的c编写函数.我尝试使用SWIG生成包装器-但它似乎掉下来了.我认为我需要找出适合在numpy.i中使用的“宏”-但不确定是什么-任何人对此都有任何经验-或其他可以解决此问题的方法? numpy.i在底部显示了它-尽管已被注释掉.我尝试使用这些宏-但是它们失败了,SWIG抱怨我尝试了以下宏扩展的语法错误:%numpy_typemaps(complex float, NPY_CFLOAT , int) %numpy_typemaps(complex double, NPY_CDOUBLE, int) %...

python-调整numpy或数据集大小的有效方法?【代码】

我想了解numpy数组对h5py数据集的resize()函数的影响.在我的应用程序中,我逐行读取一个文本文件,然后在解析数据之后,将其写入hdf5文件.什么是实现此目标的好方法.我应该将每个新行添加到numpy数组中并继续调整numpy数组的大小(增加轴)(最终将完整的numpy数组写入h5py数据集),还是应该直接将每个新行数据添加到h5py数据集中,从而调整h5py的大小内存中的数据集.如果我们在每一行之后继续调整大小,resize()函数将如何影响性能?还是应...

python-如何继承numpy.`ma.core.masked_array`?【代码】

我正在尝试编写一个masked_array的子??类.到目前为止,我得到的是:class gridded_array(ma.core.masked_array):def __init__(self, data, dimensions, mask=False, dtype=None,copy=False, subok=True, ndmin=0, fill_value=None,keep_mask=True, hard_mask=None, shrink=True):ma.core.masked_array.__init__(data, mask, dtype, copy, subok,ndmin, fill_value, keep_mask, hard_mask,shrink)self.dimensions = dimensions但是,当...

python-用numpy将数组分组到嵌套结构【代码】

假设我有一个像这样的numpy数组(更大,每个日期的重复次数不同):data = np.array([ ["2011-01-01", 24, 554, 66], ["2011-01-01", 44, 524, 62], ["2011-01-04", 23, 454, 32], ["2011-01-04", 22, 45, 42], ["2011-01-04", 14, 364, 12] ])现在,我想按日期将列分组为一个更扁平的结构:[ ["2011-01-01", [[24, 554, 66], [44, 524, 62]]],["2011-01-04", [[23, 454, 32], [22, 4...

python-具有numpy的N * M * M张量的矢量化(部分)逆【代码】

我几乎和一年前的情况一样处于类似的情况:fast way to invert or dot kxnxn matrix 所以我有一个张量的索引为a [n,i,j]的维度为(N,M,M)的张量,我想为N中的每个n求M * M方阵部分的值. 例如,假设我有In [1]: a = np.arange(12)a.shape = (3,2,2)aOut[1]: array([[[ 0, 1],[ 2, 3]],[[ 4, 5],[ 6, 7]],[[ 8, 9],[10, 11]]])然后for循环反转将如下所示:In [2]: inv_a = np.zeros([3,2,2])for m in xrange(0,3):inv_a[m] = np...

python-从一个numpy数组的索引采样的有效方法?【代码】

考虑到每个索引都由该数组内部的数字加权,因此我想从2D Numpy数组的索引中进行采样.我知道的方式是使用numpy.random.choice,但是它不返回索引而是返回数字本身.有什么有效的方法吗? 这是我的代码:import numpy as np A=np.arange(1,10).reshape(3,3) A_flat=A.flatten() d=np.random.choice(A_flat,size=10,p=A_flat/float(np.sum(A_flat))) print d解决方法:您可以执行以下操作:import numpy as npdef wc(weights):cs = np.cum...