【Python:用另一个数组元素作为键对数组进行排序?】教程文章相关的互联网学习教程文章

python-用矩阵作为元素的数组的Numpy intersect1d【代码】

我有两个数组,一个数组的形状为(200000,28,28),另一个数组的形状为(10000,28,28),因此实际上是两个以矩阵为元素的数组.现在,我想计算并获得在两个数组中都重叠的所有元素(格式为(N,28,28)).使用普通的for循环,这是减慢速度的方法,因此我尝试使用numpys intersect1d方法进行尝试,但我不知道如何将其应用于此类数组.解决方法:使用this question about unique rows起的方法def intersect_along_first_axis(a, b):# check that casting...

python-根据另一个数组对齐numpy数组【代码】

我有一个包含任意整数的numpy数组a,我还有另一个数组b,(它始终是a的子集,但是b中数字的顺序不同于a.我想按顺序排列b的元素它出现在a = np.array([4,2,6,5,8,7,10,12]); b = np.array([10,6,2,12]),我希望b对齐为[2,6,10,12].我怎样才能有效地在numpy中做到这一点?解决方法:方法#1:采用np.in1d的一种方法,假设-中没有重复项a[np.in1d(a,b)]元素处于干扰状态的更好的案例案例,以至于没有针对常见元素进行排序以呈现各种案例-In [10...

python-从具有3个通道的numpy数组中绘制彩色图像【代码】

在我的Jupyter笔记本中,我试图显示通过Keras迭代的图像.我正在使用的代码如下def plotImages(path, num):batchGenerator = file_utils.fileBatchGenerator(path+"train/", num)imgs,labels = next(batchGenerator)fig = plt.figure(figsize=(224, 224))plt.gray()for i in range(num):sub = fig.add_subplot(num, 1, i + 1)sub.imshow(imgs[i,0], interpolation='nearest')但这仅绘制单个通道,因此我的图像是灰度的.如何使用3个通道...

python-NumPy直方图-ValueError范围参数必须是有限的-输入数组可以【代码】

我正在努力理解此错误,因为我将给您一个有效的示例,而我对此感兴趣的示例却没有. 我必须分析一组数据,其中包含全年的每小时价格,称为sys_prices,在进行各种转换后,它是一个具有8785行(1列)的numpy.ndarray对象,每一行都是一个numpy.ndarray项仅包含一个元素,即numpy.float64数字. 下面的代码不起作用:stop_day = 95 start_day = stop_day - 10 # 10 days before stop_day = (stop_day-1)*24 start_day = (start_day-1)*24pcs=[] #...

python-如何使用花式索引创建Numpy数组【代码】

如何使用numpy的精美索引来创建此索引,我想要最快的性能:array([[ 1, 2, 3, 4, 16, 31],[ 2, 3, 4, 5, 17, 32],[ 3, 4, 5, 6, 18, 33],[ 4, 5, 6, 7, 19, 34],[ 5, 6, 7, 8, 20, 35],[ 6, 7, 8, 9, 21, 36],[ 7, 8, 9, 10, 22, 37],[ 8, 9, 10, 11, 23, 38],[ 9, 10, 11, 12, 24, 39],[10, 11, 12, 13, 25, 40]]从此开始:a = np.arange(0,10)aa = np.arange(0,50)y = 1AA = [(aa[np.array([x+y, 1+x+...

使用python将包含参数的字符串转换为数组【代码】

我有这个python脚本,它将参数作为以“,”分隔的字符串,但是我不能只拆分它,因为有些参数包含“,”.输入是这样的:"hello, how are you","how old are you"我想让他们成为:["hello, how are you","how old are you"]解决方法:由于您的字符串看起来像csv,因此也许可以使用csv模块.import csv my_str = '"hello, how are you","how old are you"' my_csv = [my_str] # Wrap in a list because the csv module expects it csv_reader ...

python-Cython中从现有数组和变量创建新数组的最快方法是什么【代码】

假设我有一个数组from array import array myarr = array('l', [1, 2, 3])和一个变量:myvar = 4什么是创建新数组的最快方法:newarray = array('l', [1, 2, 3, 4])您可以假设所有元素均为“长”类型 我试图创建一个新的数组并使用array.append()不知道它是否最快.我当时在考虑使用memoryview像这样:malloc(4 * sizeof(长))但我不知道如何将较短的数组复制到memoryview的一部分.然后将最后一个元素插入最后一个位置. 我对Cython很...

python-将numpy数组项放入“ bins”中【代码】

这个问题已经在这里有了答案: > Grouping indices of unique elements in numpy 4个我有一些整数的numpy数组,例如a = numpy.array([1, 6, 6, 4, 1, 1, 4])我现在想将所有项目放入等值的“容器”中,以使带有标签1的容器包含具有值1的a的所有索引.对于上面的示例:bins = {1: [0, 4, 5],6: [1, 2],4: [3, 6],}结合独特性和去向的诀窍,uniques = numpy.unique(a) bins = {...

快速创建数组 python【代码】

arr = np.arange(0,5,0.1) print(arr.shape) #(50,)从数字0到数字5,步长为0.1创建一个一维数组,之后可以reshape,得到多维数组 arr1 = arr.reshape((10,5)) print(arr1)输出结果为: [[0. 0.1 0.2 0.3 0.4][0.5 0.6 0.7 0.8 0.9][1. 1.1 1.2 1.3 1.4][1.5 1.6 1.7 1.8 1.9][2. 2.1 2.2 2.3 2.4][2.5 2.6 2.7 2.8 2.9][3. 3.1 3.2 3.3 3.4][3.5 3.6 3.7 3.8 3.9][4. 4.1 4.2 4.3 4.4][4.5 4.6 4.7 4.8 4.9]]

Python / Numpy我是否已经为大型数组编写了最快的代码?【代码】

目标:我有一个很大的一维距离数组(3000000),具有很多重复的距离.我正在尝试编写最快的函数,该函数返回在数组中出现n次的所有距离.我已经用numpy编写了一个函数,但是代码中的一行存在瓶颈.快速性能是一个问题,因为计算是针对2400个不同的大距离数组在for循环中完成的.import numpy as np for t in range(0, 2400):a=np.random.randint(1000000000, 5000000000, 3000000)b=np.bincount(a,minlength=np.size(a))c=np.where(b == 3)[0...

python-迭代两个列表;然后在数组中比较/追加结果【代码】

我有两个清单. 一本字典.另一个列表,但带有纯字符串(我将其解析,因此提取字典匹配键) 例如: 字典列表如下所示:list1 = [{'name':'foo', 'age':'12'},{'name':'bar','age':'12'},{'name':'alex','age':13}]然后我有第二张清单,像这样filters_list = ['name=foo', 'age=12']我想遍历第一个列表;然后创建一个空列表,然后附加每个匹配项. 在这种情况下; 我会得到所有的名字“ foo”和“ 13”岁,所以这将使我从第一个列表又称为list1...

从Python中的数组获取所有可能的值【代码】

我有一个包含多个(超过1000个)列和行的文件,它们的名称不遵循任何模式.其示例如下:file1.txtIDs AABC ABC6 YHG.8 D78Ha Ellie 12 48.70 33 Kate 98 34 21 76.36 Joe 22 53 49 Van 77 40 12.1 Xavier 88.85 首先,我必须用NA填补空白,以便看起来像:file1.txtIDs AABC ABC6 ...

python-包含第一个元素的逆数组切片【代码】

这个问题已经在这里有了答案: > Python reverse-stride slicing 8个假设我有:>>> a = [1, 2, 3, 4]我想得到一个反向切片.假设我要给定start_idx = 1和stop_idx = 0的第1个和第0个元素:[2, 1] 使用切片符号:a[x:y:z]使用start_idx和stop_idx为x,y和z使用什么值? 我试过了:>>> a[start_idx:stop_idx:-1] [2] >>> a[start_idx:stop_idx-1:-1] []差异化: 这个问题是关...

Python:ValueError:使用序列设置数组元素【代码】

我正在尝试使用scikit-learn做一些ML. 我正在使用预处理模块准备数据.数据的类型为float. 通过阅读有关此问题的其他问题:ValueError: setting an array element with a sequence,这可能是由于我的数据结构错误,还是因为我的数据是字符串类型.这里似乎都不是这样. 如果您有任何解决方法或其含义,请告诉我.谢谢. 编码:print(X)pred_X = np.array(pred_X) pred_Y = np.array(pred_Y) X = np.array(X) Y = np.array(Y)X = preprocess...

需要在bash中的python数组中传递对象【代码】

我正在尝试使用下面的python代码片段获取三个站点的响应代码.但是想知道如何解析数组中的每个对象以通过curl调用中的for循环.import osservers = ["google", "yahoo", "nonexistingsite"] for i in range(len(servers)):print(os.system('curl --write-out "%{http_code}\n" --silent --output'' /dev/null "https://servers[i].com"'))使用上面的代码,它不会通过服务器[i]传递.解决方法:您需要执行字符串格式化,例如:import osse...