【python-Numpy.eig和PCA中的方差百分比】教程文章相关的互联网学习教程文章

python – 为什么我的3D numpy数组中的值在写入文件时会发生变化?【代码】

奇怪的问题是,我有一个3D阵列充满标签(比如说1-36),名为labelled_stack.这些只是数组中的值等于给定标签的区域.带有5个标签的快速2D示例如下:labelled_stack = (0 0 0 0 0 0 0 0 0 0)(0 1 1 0 0 0 2 2 2 0)(0 1 0 0 3 0 0 2 2 0)(0 0 0 3 3 0 0 0 0 0)(0 4 0 0 3 0 0 0 5 0)(0 4 0 0 0 0 5 5 5 0)(0 0 0 0 0 0 0 0 0 0)但想象一下它的阵容…… 我已经尝试使用cv2.imwrite和scipy.misc.imsave来保存堆栈,但是当我这样做然后打开它们...

python – 通过numpy查找索引【代码】

参见英文答案 > Numpy int array: Find indices of multiple target ints 3个我有numpy数组列表:x = ["A", "A", "B", "A", "C", "D", "B"] 为了找到“A”的索引,我使用np.where(x ==“A”),它工作正常.如何找到“A”和“B”的索引? 我用了:np.where(x == ["A", "B"]) np.where(x in ["A", "B"]) np.where(x == any(["A", "B"])) 但它没有帮助我.解决方法:使用|或者np_logical_or为元素OR:...

python – Numpy以编程方式从数组创建索引/切片【代码】

我可以使用numpy.mgrid如下:a = numpy.mgrid[x0:x1, y0:y1] # 2 dimensional b = numpy.mgrid[x0:x1, y0:y1, z0:z1] # 3 dimensional现在,我想以编程方式在括号中创建表达式,因为我不知道我是否有1,2,3或更多维度.我正在寻找类似的东西:shape = np.array([[x0, x1], [y0, y1], ... maybe more dimensions ...]) idx = (s[0]:s[1] for s in shape) a = numpy.mgrid[idx]这至少在第二行中出现语法错误.如何以编程方式正确生成这些索...

python – 检查变量是否为None或numpy.array【代码】

如果键具有关联的数组,我会在表中查找.按照设计,我的表.__ getitem __()somtimes返回None而不是KeyError-s.我希望这个值为None,或与w关联的numpy数组.value = table[w] or table[w.lower()] # value should be a numpy array, or None if value is not None:stack = np.vstack((stack, value))只有当我使用上面的代码,并且第一次查找是匹配时,我得到:ValueError: The truth value of an array with more than one element is ambi...

num2cell()的python / numpy等价物是什么?【代码】

我不幸的是通过numpy数组将一些MATLAB代码转换成Python. 对num2cell()有什么共识吗? 就个人而言,我认为这违反了Python / numpy语法.这个想法是这样的: 使用num2cell,你最终会得到一个看起来像这样的数组 阵列([[0],[1],[2],[3],[4],[5],[6],[7],[8]]) 见the MathWorks documentaiton. 你可以通过列表理解在numpy中做到这一点:matlab_lunacy = np.array([[x] for x in range(0, 9)]但为什么MATLAB用户使用这种数据结构呢? 什么是...

python – Cython Gibbs采样器比numpy采样器慢一点【代码】

我已经实现了一个Gibbs采样器来生成纹理图像.根据beta参数(shape(4)的数组),我们可以生成各种纹理. 这是我使用Numpy的初始函数:def gibbs_sampler(img_label, betas, burnin, nb_samples):nb_iter = burnin + nb_sampleslst_samples = []labels = np.unique(img)M, N = img.shapeimg_flat = img.flatten()# build neighborhood array by means of numpy broadcasting:m, n = np.ogrid[0:M, 0:N]top_left, top, top_right = m[0:...

python – 分配给numpy数组的包装切片【代码】

我有一个大图像A和一个较小的图像B,都表示为2-D numpy数组.我想使用A作为画布,并在其上面写出B的翻译副本,以六边形排列.我无法理解的部分是如何处理它,使图像垂直和水平包裹 – 基本上我想要的是将(填充的,必要的)子图像定期镶嵌到圆环上. 我已经看过numpy.take和numpy.roll的讨论了wrapping around slices in Python / numpy,它告诉我如何访问和返回一个数组的包装切片的副本,但我想分配给那个,即对于任意整数rowOffset和columnOf...

python – 读取选项卡将csv分隔为具有不同数据类型的numpy数组【代码】

我有一个制表符分隔的csv数据集如下:1 2 3 4 5 6 [0, 1, 2, 3, 4, 5] 3 1 2 6 4 5 [2, 0, 1, 5, 3, 4] 7 8 9 10 11 6 [0, 1, 2, 3, 4, 5] 10 11 9 8 7 6 [3, 4, 2, 1, 0, 5] 12 13 4 14 15 6 [0, 1, 2, 3, 4, 5] 13 4 14 12 ...

python – Numpy:查找每行元素的列索引【代码】

假设我有一个包含要查找的元素的向量:a = np.array([1, 5, 9, 7])现在我有一个矩阵,应该搜索这些元素:M = np.array([ [0, 1, 9], [5, 3, 8], [3, 9, 0], [0, 1, 7] ])现在我想得到一个索引数组,告诉M的j行j的哪一列出现. 结果将是:[1, 0, 1, 2]Numpy会提供这样的功能吗? (感谢列表推导的答案,但这不是表现方面的选择.我也为在最后一个问题中提到Numpy而道歉.)解决方法:注意结果:M == a[:, None] >>> array([[False, True, Fa...

Python Pandas:查找包含numpy数组的数据框列中每行的最大值【代码】

我有一个Pandas DataFrame,如下所示:values max_val_idx 0 np.array([-0.649626, -0.662434, -0.611351]) 2 1 np.array([-0.994942, -0.990448, -1.01574]) 1 2 np.array([-1.012, -1.01034, -1.02732]) 0df [‘values’]包含固定长度为3个元素的numpy数组df [‘max_val_idx]包含相应数组的最大值的索引 由于已经给出了每个数组的最大元素...

python – 将numpy数组转换为字符串的最快方法【代码】

我需要组织一个包含命名数据块的数据文件.数据是NUMPY数组.但我不想使用numpy.save或numpy.savez函数,因为在某些情况下,数据必须通过管道或其他接口在服务器上发送.所以我想将numpy数组转储到内存中,压缩它,然后将其发送到服务器中. 我尝试过简单的泡菜,像这样:try:import cPickle as pkl except:import pickle as pkl import ziplib import numpy as npdef send_to_db(data, compress=5):send( zlib.compress(pkl.dumps(data),co...

python – 致命错误:numpy / arrayobject.h:没有这样的文件或目录【代码】

我受限于我可以分享的内容,因为这是我从Ubuntu 14.04移植到16.04的大量代码的一部分. 它应该是微不足道的,但不知何故,我正在努力解决这个问题.它找不到我在源文件中使用#include< numpy / arrayobject.h>引用的numpy / arrayobject.h; 我将尝试尽可能多地分享,看看是否有人可以指导我完成决议. Ubuntu的$lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.2 LTS Release: 16...

python – 使用numpy.vectorize()旋转NumPy数组的所有元素【代码】

我正处于学习NumPy的开始阶段.我有一个33矩阵的Numpy数组.我想创建一个新的数组,其中每个矩阵旋转90度.我已经研究了这个answer,但我仍然无法弄清楚我做错了什么.import numpy as np# 3x3 m = np.array([[1,2,3], [4,5,6], [7,8,9]])# array of 3x3 a = np.array([m,m,m,m])# rotate a single matrix counter-clockwise def rotate90(x):return np.rot90(x)# function that can be called on all elements of an np.array # Note: I...

python – NumPy – 从2D numpy数组创建1-hot tensor【代码】

我有一个numpy 2D数组,其值介于0到59之间. 对于那些熟悉DL,特别是图像分割的人 – 我从.png图像创建数组(称之为L),每个像素的值L [x,y]表示该像素所属的类(在60班). 我想创建一个1热的张量 – Lhot,其中(Lhot [x,y,z] == 1)仅在(L [x,y] == z)时,否则为0. 我想用某种广播/索引(1,2行)创建它 – 没有循环. 它应该在功能上等于这段代码(Dtype对应于L):Lhot = np.zeros((L.shape[0], L.shape[1], 60), dtype=Dtype) for i in range(...

python – 有效地对与另一个数组匹配的索引相对应的numpy数组的元素求和【代码】

我想找到与另一个numpy匹配的索引对应的行的总和. 以下示例更好地证明了这一点.A=np.array(['a-1','b-1','b-1','c-2','a-1','b-1','c-2']); b = np.array([1.21,2.34,1.2,2.8,10.0,0.9,8.4]);;我更喜欢输出是字典,这样d['a-1'] = 1.21 + 10.0 = 11.21 d['b-1'] = 2.34 + 1.2 + 0.9 = 4.44 d['c-2'] = 2.8 + 8.4 = 11.2结果是b数组的元素总和,对应于A数组中出现相同值的索引.有没有一种有效的方法来做到这一点?我的阵列很大(数百万...