【python-如何在数组中返回嵌套文档】教程文章相关的互联网学习教程文章

将元素插入列表中的确切位置,而无需在Python中调整数组大小?【代码】

我已经看过Create an empty list in python with certain size – Stack Overflow;但我只想确认-考虑以下MWE:data = ( ( "x1", ( (3, "a"), (1, "b"), (5, "c") ) ), ( "x2", ( (2, "a"), (4, "b") ) ) )outputA = []for ix in data:print ix[0] # x1, x2for isnip in ix[1]:outputA.append(isnip)print outputA # [(3, 'a'), (1, 'b'), (5, 'c'), (2, 'a'), (4, 'b')]outputB = []for ix in data:print ix[0] # x1, x2for is...

python-如何迭代一个numpy数组并选择相邻的单元格【代码】

我正在将USGS高程栅格数据集转换为Numpy数组,然后尝试随机选择数组中的位置.从这个位置,我想创建一种方法来识别周围的八个单元,以查看这些单元的高度是否在随机选择的单元的一米以内. 在这里它变得更加复杂…如果邻居在一米之内,则将调用相同的方法,然后重复该过程,直到一米以内不再有像元或所选像元的数量达到规定的限制. 如果不清楚,希望下面的2d数组示例更有意义.随机选择粗体/斜体单元格(35),在其上调用该方法(选择其所有八个邻...

python-如何对数组中的numpy数组进行排序?【代码】

这个问题与this one密切相关.可以说可以使用np.lexsort或在np.recarray上排序来解决它,但不能以琐碎和Python的方式解决. 我有一个numpy数组,例如这个数组:array([[[ 2, 7, 1],[ 35, 9, 1],[ 22, 12, 4]],[[ 12, 2, 3],[ 3, 7, 8],[ 12, 1, 10]]])我想把那个作为输出:array([[[ 2, 7, 1],[ 22, 12, 4],[ 35, 9, 1]],[[ 3, 7, 8],[ 12, 1, 10],[ 12, 2, 3]]])也就是说,根据每个内部数组的第一,第二和第三值...

在python中乘数组【代码】

从this问题开始,我看到了如何将整个numpy数组与相同的数字相乘(第二个答案,由JoshAdel提供).但是,当我将P更改为(长)数组的最大值时,最好事先存储最大值,还是在第二个示例中仅计算一次H的最大值?import numpy as np H = [12,12,5,32,6,0.5] P=H.max() S=[22, 33, 45.6, 21.6, 51.8] SP = P*np.array(S)要么import numpy as np H = [12,12,5,32,6,0.5] S=[22, 33, 45.6, 21.6, 51.8] SP = H.max()*np.array(S)那么它是为它必须相乘的...

Python:规范多维数组【代码】

我有代码来生成和导出12个立体声WAV 目前我只是在做:for i in range(0,12):filename = "out_%d.wav" % iL = ... some list of floats between -1.0 and +1.0 ...R = ... similarly ...exportWAV(filename,L,R)但是音量太小了. 我需要做的是找到所有L& R,然后将所有L& R按此卷.然后,我所有的值都将在-1和1之间. 这不是一项艰巨的任务,我可以破解一些丑陋的代码来完成它. 但是如何做到干净呢? 我应该能够在几行中做到这一点,例如:...

python-浮点数的numpy数组表示形式中的多余空格【代码】

您知道为什么numpy整数数组的表示没有填充:>>> print array([[1, 2], [3, 4]]) [[1 2][3 4]]而浮点数的numpy数组在每个条目之前都有一个额外的空间?>>> print array([[1., 2], [3, 4]]) [[ 1. 2.][ 3. 4.]](至少在Python 2.7中) 我对它背后的原因/想法更感兴趣,而对引起它的具体实现细节更感兴趣.解决方法:我似乎怪罪于找出为什么作者如此实现. 看一下https://github.com/numpy/numpy/blame/master/numpy/core/arrayprint.py的...

python-将1D字节数组转换为2D numpy数组的最快方法【代码】

我有一个可以像这样处理的数组:ba = bytearray(fh.read())[32:] size = int(math.sqrt(len(ba)))我可以判断像素应该是黑色还是白色iswhite = (ba[i]&1)==1如何快速将我的1D字节数组转换为2D numpy数组,其行长大小为(ba [i]& 1)== 1而其他像素为白色像素?我这样创建数组:im_m = np.zeros((size,size,3),dtype="uint8)解决方法: import numpy as np# fh containts the file handle# go to position 32 where the image data start...

在Python中乘法非常大的2D数组【代码】

我必须在Python中将非常大的2D数组乘以大约100次.每个矩阵由3200032000元素组成. 我正在使用np.dot(X,Y),但是每次乘法都需要很长时间…在我的代码实例下面:import numpy as npX = None for i in range(100)multiplying = Trueif X == None:X = generate_large_2darray()multiplying = Falseelse:Y = generate_large_2darray()if multiplying:X = np.dot(X, Y)还有其他方法快得多吗? 更新资料 这是显示htop界面的屏幕截图.我的pyt...

python-使用索引替换2D numpy数组的一部分【代码】

我正在尝试将2D numpy数组的一部分替换为i和j的函数,它们名为“ S”.给定S为:>>> S Out[1]: array([[ 1., 0., 0.],[ 0., 3., 0.],[ 0., 0., 9.]]对于i = 0和j = 1,我可以使用以下语法访问元素第i和j行以及第i和j列:>>> S[:, [i, j]][[i, j], :] Out[2]: array([[ 1., 0.],[ 0., 3.]])现在,当我尝试用另一个尺寸相同的数组(tmp_arr)替换数组S的相同元素时,python不会给出错误,但是它也没有做任何事情,这意味着S的元素保...

python对json对象或json数组操作以及读写各类txt,csv,html,xls文件的工具类【代码】【图】

1.对json数组和json对象的操作在python中,一个 Json 对象里面包含了很多信息,那么如何从这些数据中拿到我们想要的呢?在之前的python对象与json格式的数据类型转化一文中已经说明如何操作一个json对象,本文是再补充一个常见的还有处理 Json 数组 的。python 的 json 模块有两个主要的函数。1.python 对象转化为 json格式: json.dumps()2.将json数据转化为python对象: json.loads()就是:1 import json 2 Json.dumps() ...

python-指向c_int与c_ints数组的ctypes指针【代码】

我正在尝试在dll中调用函数.该函数称为pop(),它带有两个参数,一个int和一个指向int的指针.第一个参数是从第二个参数开始的数组的长度.此函数应返回一个指向int的指针,该int是n-1个元素数组中的第一个元素,其中n是原始数组中元素的数量.返回的数组应该是原始数组,没有第0个元素. 我的代码:from ctypes import cdll, c_int, POINTERlib = cdll.LoadLibrary('extlib.dll')lib.pop.restype = POINTER(c_int) #lib.pop.restype = c_int...

python-将巨大的.dat加载到数组中的最快方法【代码】

我已经在stackexchange中广泛搜索了一种简洁的解决方案,用于将巨大的(?2GB).dat文件加载到numpy数组中,但是没有找到合适的解决方案.到目前为止,我设法以一种非常快的方式(小于1分钟)将其作为列表加载:list=[] f = open('myhugefile0') for line in f:list.append(line) f.close()使用np.loadtxt会冻结我的计算机,并且需要花费几分钟来加载(?10分钟).如何才能将文件作为数组打开而不会出现似乎困扰np.loadtxt的分配问题? 编辑: 输...

python-f2py:将数组预先分配为Fortran子例程的输入【代码】

这是我想在python中调用的Fortran子例程的最小片段.任务很简单.首次调用该代码时,会将值分配给数组iwk的第一项.然后再次调用该子例程,预期的行为是所分配的条目不变.subroutine testf2py (md,iwk,ndp,nip)implicit noneinteger ndp !f2py intent(in) :: ndpinteger nip !f2py intent(in) :: nipinteger iwk(31*ndp + nip) !f2py intent(in) :: iwk integer md !f2py intent(in) :: mdif ( md == 1 ) theniwk(1) = ndpend if p...

将matlab.double数组转换为python数组【代码】

我正在使用matlab python引擎从python中的matlab项目访问数据.这很好用,但是我在高效使用python中的matlab数组方面确实存在问题.例如,我要使用matlab的数组,我用了(eng代表matlab引擎):x = eng.eval(arg)我得到的是一个matlab.double数组,看起来像这样:matlab.double([[1.0,2.0],[4.0,3.0],[2.0,5.0]])看起来还不错.让我们尝试捕获一个条目:>>> x[2][1] 5.0好极了!一整排怎么样?>>> x[0] matlab.double([1.0,2.0])..好吧,至少...

使用None值从Python int列表初始化numpy掩码数组【代码】

如问题Convert python list with None values to numpy array with nan values的答案所示,如果我们强制执行dtype = float,则可以使用None值从列表中初始化被屏蔽的numpy数组.这些浮点值将转换为nan,我们可以简单地执行以下操作:ma.masked_invalid(np.array(a, dtype=float), copy=False)但是,这不适用于int,例如:ma.masked_invalid(np.array(a, dtype=int), copy=False)因为不会使用None值创建中间np.array(没有int nan). 什么是...