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

python-重塑图像数组时感到困惑【代码】

目前,我正在尝试运行ConvNet.每个稍后供入神经网络的图像都存储为一个列表.但是此列表是使用三个for循环创建的.看一看:im = Image.open(os.path.join(p_input_directory, item)) pix = im.load()image_representation = []# Get image into byte array for color in range(0, 3):for x in range(0, 32):for y in range(0, 32):image_representation.append(pix[x, y][color])我很确定这不是最好,最有效的方法.因为我必须坚持上面创...

python-Pandas / Numpy从数组列获取矩阵【代码】

我有一个带有列表列的pandas数据框. df:inputs 0 [1, 2, 3] 1 [4, 5, 6] 2 [7, 8, 9] 3 [10, 11, 12]我需要矩阵array([[ 1, 2, 3],[ 4, 5, 6],[ 7, 8, 9],[10, 11, 12]])一个有效的方法来做到这一点? 注意:当我尝试df.inputs.as_matrix()时,输出为array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]], dtype=object)形状为(4,),而不是所需的(4,3).解决方法:您可以将列转换为列表,然后应用numpy数组,如果列中的...

python-将元素添加到数组的可能性【代码】

因此,我在Python中建立了一个列表,例如,让我们说前100个整数,但是我确实需要所有100个整数,但只有一个样本可以说3.import random def f():list_ = []for i in range(100):list_.append(i)return list_def g(list_,k):return random.sample(list_, k)print(g(f(),3))>>>[50, 92, 6]现在我可以避免不首先构建整个列表,而是直接构建示例,也许是通过增加将元素添加到f()中的列表的概率来进行构建 因为如果我要建立一个庞大的列表,该列表...

python-布尔numpy数组的子矩阵求和【代码】

我有一个1151布尔矩阵a.为此,我在Matlab中执行此操作以获得大小为1050的布尔矩阵.a = logical(a(1:end-1,1:end-1) + a(2:end,1:end-1) + a(1:end-1,2:end) + a(2:end,2:end))我想在python中做到这一点.我尝试了这个:a = np.zeros([11,51], dtype=bool) a=a[0:-2,0:-2] + a[1:-1,0:-2] + a[0:-2,1:-1] + a[1:-1,1:-1]我最终得到了949矩阵,但不确定它是否正在执行预期的操作. 有人可以指出错误吗?解决方法:使用slicing,它将是-a_ou...

在python和matlab中将浮动二进制文件读取为2D数组【代码】

我有一些二进制输入文件(扩展名“ .bin”)描述了海洋深度的二维字段,并且均为负浮点数.我已经能够将它们加载到matlab中,如下所示:f = fopen(filename,'r','b'); data = reshape(fread(f,'float32'),[128 64]);这个matlab代码为我提供了介于0和-5200之间的双精度值.但是,当我尝试在Python中执行相同操作时,我奇怪地得到了0到1e-37之间的值. Python代码是:f = open(filename, 'rb') data = np.fromfile(f, np.float32) data.shape ...

python-根据2D numpy数组过滤3D numpy数组

我有一个形状为(3024,4032)的2D numpy数组. 我有一个形状为(3024、4032、3)的3D numpy数组. 2D numpy数组填充为0和1. 3D numpy数组填充了0到255之间的值. 通过查看2D数组值,我想更改3D数组中的值.如果2D数组中的值为0,我将沿最后一个轴将3D数组中的所有3个像素值更改为0.如果2D数组中的值为1,则不会更改. 我已经检查了How to filter a numpy array with another array’s values这个问题,但它适用于2个具有相同尺寸的数组.就我而言...

从python中的2D数组中随机采样子数组【代码】

问题: 假设我有一个2D阵列,我想从中随机采样(使用蒙特卡洛)较小的2D子阵列,如下图中的黑色小块所示.我正在寻找一种有效的方法.预期(但部分)的解决方案: 我遇到了一个function,在经过几个小时的搜索后,它部分实现了我要尝试的功能,但是它缺乏在随机位置采样补丁的功能.至少我不认为它可以基于其参数从随机位置进行采样,尽管它确实具有一个我不理解的random_state参数.sklearn.feature_extraction.image.extract_patches_2d(image,...

python-使用与原始数组相同的顺序绘制具有字符串数组的x轴,并且不在matplotlib中按字母顺序对其进行排序【代码】

Numpy或Matplotlib都在更改我的np.array的顺序,并且与我的情节冲突.这导致月份混乱,而相应的数据仍处于相同的顺序,这使绘图看起来很奇怪:import matplotlib.pyplot as plt import numpy as np import pandas as pdf = np.array([53, 56, 63, 72, 79, 86, 89, 88, 83, 74, 65, 56]) month = np.array(["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]) plt.plot(month, f)plt.xlabel('Month...

python-打印一个numpy数组的所有列和行【代码】

如屏幕截图所示,为了打印目的,二维的numpy数组被截断了.我想显示所有元素.是否有启用该行为的选项设置? 解决方法:有关打印选项,请参见the docs.特别:threshold : int, optional Total number of array elements which trigger summarization rather than full repr (default 1000).因此,将阈值设置为np.inf意味着永远不会汇总它.np.set_printoptions(threshold=np.inf)

python-获取数组的索引数组【代码】

如果我有一个这样的多维数组:a = np.array([[9,9,9],[9,0,9],[9,9,9]])我想要获得该数组中每个索引的数组,如下所示:i = np.array([[0,0],[0,1],[0,2],[1,0],[1,1],...])我发现使用np.indices做到这一点的一种方法是:i = np.transpose(np.indices(a.shape)).reshape(a.shape[0] * a.shape[1], 2)但这似乎有些笨拙,尤其是考虑到np.nonzero的存在几乎可以满足我的要求. 是否有内置的numpy函数将生成二维numpy数组中每个项目的索引数...

python-对特定区域内的多维数组中的元素求和【代码】

我正在创建一个游戏,其中机器人遍历了二维数组的地图. 2D阵列中的每个点都有一个“宝藏”,即许多硬币.我希望能够将所有元素添加到机器人当前位置的上下左右四个位置(制作一个“加号”).因此,如果我们有一个数组:a = [[1, 2, 3, 4][5, 6, 7 ,8][9, 10, 11, 12][13, 14, 15, 16]如果机器人站在a [0] [0](在1位置)上,则总和将返回1 2 3 4 5 913.如果机器人站在a [1] [2](第7点)上,它会返回(7 3)(8)(5 6)(11 15).但我希望它最多返回4个...

python-使用.all()和any()获取搜索数组的索引【代码】

我有数组列表,我正在使用.all()和.any()来检查数组即时搜索是否在数组列表中.t = np.array([[1,2,3], [4,5,6] , [7,8,9], [10, 11, 12]])t2 = np.array([1,2,3])print((t == t2).all(1)) outpu:> [ True False False False]在这里我可以检查t2是否在t中print((t == t2).all(1).any()) outpu:> True我的问题是我可以通过.all和.any方法获取t2在t中存在什么索引吗?解决方法:您正在寻找np.flatnonzero或np.where.>>> np.flatnonzero(...

python-用字符切片numpy数组【代码】

我的文本文件为:0.01 1 0.1 1 10 100 a 0.02 3 0.2 2 20 200 b 0.03 2 0.3 3 30 300 c 0.04 1 0.4 4 40 400 d我将其读取为列表A,然后转换为numpy数组,即:>>> A array([['0.01', '1', '0.1', '1', '10', '100', 'a'],['0.02', '3', '0.2', '2', '20', '200', 'b'],['0.03', '2', '0.3', '3', '30', '300', 'c'],['0.04', '1', '0.4', '4', '40', '400', 'd']], dtype='|S4')我只想提取一个子数组B,它由A组成,只要它的第4个条目低于...

使用.join()为Python中数组中除第一列之外的所有列着色【代码】

我试图在第一列之后为数组的所有元素上色.我终于使它工作了,但是我知道还有更多的“ pythonic”方式可以做到这一点,并寻求一些建议:for row in board: print row[0] + " " + " ".join(colored(element, element_colors[element])for element in row[1:])任何有关如何以更pythonic的方式执行此操作的建议将不胜感激! 编辑:所需的输出如下:[1] [W] [W] [W] [W] [W] [W] [W] [W] [2] [W] [W] [W] [W] [W] [W] [W] [W] [3] [W] ...

python-2d数组中所有元素的总和,不同的方法-不同的结果【代码】

我有一个浮点数的3232矩阵.我想对其中的所有元素求和.但是当我使用循环时:s = 0 for i in range(len(Temp)):for j in range(len(Temp)):s += Temp[i][j]我得到2.795541576006144e-13 当我使用NumPy .sum(..)方法时:np.sum(Temp)我得到3.197442310920451e-13 结果有很大的不同,那是对的吗? 附言无法显示我在上面的示例中使用的数组,因为它表示我的帖子主要是代码[ 1.46992605 -4.38174259 7.11556386 -9.63811941 11.89561...