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

展平嵌套数组,但还附加来自python中另一个数组的信息【代码】

嗨,我目前正在做机器学习,这对我来说有些复杂.这是一个字典,其中包含“数据”和“名称”数组,子数组的数量相同,这意味着它们通过数组的相同级别和位置相互链接.例如,数据[-12.746249259898983,-40.618078412505398,-53.765980530841738、5.2261728305123398、0.12162578441442624,-5.7948531230422988,-449155.5052490317、0.91963697398417421]的总名称为100,而数据-12.746249259898983在该阵列的名称中为’.但是,某些名称可以表示...

python-如何根据数组中值的相对大小将numpy数组按特定顺序排序(由单独的列表指定)【代码】

在一段代码中,我已经构造了一个numpy数组,并且我想根据列表中指定的特定顺序对该第一个数组进行排序.结果将是第三个数组(new_values). 第一个数组具有要排序的值.values = numpy.array([10.0, 30.1, 50, 40, 20])该列表提供了由new_values中的值的索引给出的顺序,该顺序应按降序排列,其中0对应于最大数字.order=[0, 3, 1, 4, 2].所以,new_values[0] > new_values[3] > new_values[1] > new_values[4] > new_values[2]我试图找到一个...

使此C数组处理代码更像python(甚至numpy)【代码】

我正在努力使自己的Python达到惊人的列表处理能力(最终达到numpy).我正在将我编写的一些C代码转换为python. 我有一个文本数据文件,其中第一行是标题,然后每个奇数行是我的输入数据,每个偶数行是我的输出数据.所有数据空间分开.我很奇怪,我设法使用嵌套列表推导将所有数据读入列表.很棒的东西.with open('data.txt', 'r') as f:# get all lines as a list of stringslines = list(f)# convert header row to list of ints and get i...

如何在2D数组上加速python curve_fit?【代码】

我必须在大量数据(5 000 000)上使用curve_fit numpy函数.所以基本上我已经创建了一个2D数组.第一维是要执行的配件数量,第二维是用于配件的点数.t = np.array([0 1 2 3 4])for d in np.ndindex(data.shape[0]):try:popt, pcov = curve_fit(func, t, np.squeeze(data[d,:]), p0=[1000,100])except RuntimeError:print("Error - curve_fit failed")可以使用多处理来加快整个过程,但是它仍然很慢.有没有办法以“向量化”方式使用curve_...

python-如何将数组变成可调用函数【代码】

我有一个np.piecewise函数,我想将其变为可调用函数. 例如,假设我们有:import numpy as np x = np.linspace(0,10,1001) my_func = np.piecewise(x, [x<8, x>=8], [np.sin, np.cos])我对制作函数my_callable_func感兴趣,该函数对my_func进行了一些合理的评估.合理地说,我们要么默认使用x的上一步,要么在连续的x值之间使用某种线性近似. 例如,在这种情况下,x = [0,0.01,0.02,…],因此给定my_new_func(0.015),我希望它返回np.sin(0.01...

python-列出comprehension或map()或for循环,用于访问上一行以操纵数组【代码】

假设我有一个array(numpy array)A = [[1、2、3],[0、0、0],[0、0、0]],我想将零行处理为[2、3, 1],[3、1、2],因此最终数组为A = [[1、2、3],[2、3、1],[3、1、2]] 我可以通过如下所示的for循环来做到这一点:a = np.array([[1, 2, 3],[0, 0, 0],[0, 0, 0]]) for i in xrange(1,3):a[i]=np.concatenate([a[i-1][1:], a[i-1][:1]], axis=1)转到上一行,将[1:]和[:1]连接起来,将结果分配为下一行. 我有许多这样的循环,我想知道是否可...

python-将乘法结果保存到现有数组【代码】

考虑以下代码:a = numpy.array([1,2,3,4]) b = numpy.array([5,6,7,8]) # here a new array (b*2) will be created and name 'a' will be assigned to it a = b * 2 那么,numpy是否可以将b * 2的结果直接写到已经为a分配的内存中,而无需分配新的数组?解决方法:是的,这是可能的-您需要使用np.multiply及其out参数:np.multiply(b, 2, out=a)现在,数组a填充了b * 2的结果(并且没有分配新的内存来保存函数的输出). NumPy的所有ufunc...

python:生成间距不均匀的数组【代码】

我想生成一个数组,数组的上下限由n个元素组成,类似于:def my_lin(lb, ub, steps):dx = (ub-lb) / (steps-1)return [lb + i*dx for i in range(steps)]my_lin(0,10,11)但是我希望更多的价值接近更低的价值.某种谐波间隔.我不想有一个对数间距. 我想这很简单,但我无法弄清楚.非常感谢您的帮助. 编辑: 我想出了以下快速解决方案:def harm_series(lb,n):return [float(lb)/float(i) for i in range(1,n) ]解决方法:找到一个具有所需...

python-使用索引列表有效填充NumPy数组【代码】

我知道如何在joblib中执行并行循环,该循环返回结果列表. 但是,是否可以并行填充预定义的numpy矩阵? 想象一下以下最小示例矩阵和数据:column_data = ['a', 'b', 'c', 'd', 'e', 'f', 'x'] data = [['a', 'b', 'c'],['d', 'c'],['e', 'f', 'd', 'x']] x = np.zeros((len(data), len(column_data))请注意,column_data已排序且是唯一的.数据是列表的列表,而不是矩形矩阵. 循环:for row in range(len(data)):for column in data[row]...

python-在Numpy中对遮罩数组进行切片时,如何保留遮罩?【代码】

当我创建一个Numpy蒙版数组的视图(通过切片)时,会将蒙版复制到视图中-这样,对视图的更新将不会更改原始蒙版中的蒙版(但会更改原始数组中的数据). 我想要的是在更新视图时同时更改原始数据和原始蒙版. 从Numpy documentation开始:When accessing a slice, the output is a masked array whose data attributeis a view of the original data, and whose mask is either nomask (if therewas no invalid entries in the original ar...

python-确保numpy数组中至少具有一定的维数【代码】

我的工具箱中有以下功能,并且高度依赖它.我很难相信没有numpy内置函数可以做到这一点,但是我在numpy中搜索可能的函数名称,而google在搜索该问题的各种措辞时都没有发现任何东西.有东西吗def project(a, maxdim):"""Return a view of the numpy array <a> that has at least <maxdim>+1dimensions (pad a.shape with 1's on the right if necessary)."""if isinstance(a, numpy.matrix) and maxdim > 1: a = numpy.asarray(a)else: ...

将reddit json解析为Python数组并从数组中打印项目【代码】

这是我头两周的编码;为一个基本问题道歉. 我设法解析了“ WorldNews” subreddit json,确定了各个子项(在我撰写本文时,其中有24个子项)并获取了每个新闻项的标题.我现在正尝试根据这些新闻标题创建一个数组.下面的代码确实每2-3次尝试将第五个标题([4])打印到命令行(否则提供下面的错误).它一次也不会打印多个标题(例如,如果我尝试[2,3,4],我将不断出现相同的错误). 我收到的错误无法编译:in <module> Children = theJSON["data"...

python-将数组添加到熊猫数据框【代码】

我有一个名为A的熊猫数据框,其中一列称为“ a”: >日期a> 2016年1月19日3> 2016-01-20:1> 2016-01-21:2 我有一个数组看起来像:[4,3,2].我想将此数组插入数据框,并将新列命名为b.我怎么做? 预期产量: >日期a b> 2016年1月19日3 4> 2016-01-20:1 3> 2016-01-21:2 2解决方法:正如@mgc在评论中指出的,您可以执行df [‘b’] = l:import pandas as pd from io import StringIO data="""date a2016-01-19 32016-01-20 12016-01-2...

python-居中切片之外的数组值清零【代码】

我有一个2D数组(抱歉,情况一团糟):[[4.8718 7.72844 12.4288 11.7124 7.55014 10.2837 8.50997 3.69767 4.8718][5.91745 13.7384 35.5878 79.1378 94.6858 60.1723 27.6673 12.7537 5.91745][11.1614 29.0228 108.87 175.518 155.52 138.734 96.2145 29.5323 11.1614][14.7855 59.3563 156.22 410.418 669.983 400.613 163.023 58.3647 14.7855][9.87354 87.0854 124.38 775.761 1630.11 744.488 115.188 90.8995 9.87354][8.4796...

python找到两个numpy数组的交点【代码】

我有两个描述一个空间曲线的numpy数组,它们在一个点上相交,并且我想在两个数组中找到该交点的最接近值,我的这段代码可以正常工作,但是对于大量的点它会变慢.from scipy import spatial def nearest(arr0, arr1):ptos = []j = 0for i in arr0:distance, index = spatial.KDTree(arr1).query(i)ptos.append([distance, index, j])j += 1ptos.sort()return (arr1[ptos[0][1]].tolist(), ptos[0][1], ptos[0][2])结果将是(<点坐标>,< a...