【python如何遍历所有数组】教程文章相关的互联网学习教程文章

python – 为什么shape是一个属性和一个函数而不是一个数组方法?【代码】

经验丰富的R用户,相对较新的Python用户. 如果达成共识的话,将会删除这是一个太多的意见/设计师的问题. 我真的很好奇为什么shape是numpy模块中的数组和函数的属性,而不是数组对象的方法.换一种说法,import numpy as np a = np.array((1,2,3)) np.shape(a) ## call function ## (3,) a.shape ## retrieve attribute ## (3,) a.shape() ## pretend that it's a method ## Traceback (most recent call last): ## File "<s...

python – 从numpy 2-D数组中删除NAN【代码】

与this question类似,我想从2-D numpy数组中删除一些NAN.但是,我没有删除具有NAN的整行,而是想从数组的每一行中删除相应的元素.例如(为简单起见使用列表格式)x=[ [1,2,3,4],[2,4,nan,8],[3,6,9,0] ]会成为x=[ [1,2,4],[2,4,8],[3,6,0] ]我可以想象使用numpy.where来确定NAN的每一行出现在哪里,然后使用一些循环和逻辑语句从旧数组中创建一个新数组(跳过NAN和其他行中的相应元素)但是这对我来说似乎并不是一种非常精简的做事方式.还...

python – Swig和多维数组【代码】

我正在使用Swig将Cthon与C代码连接起来. 我想调用一个C函数,它接受一个包含int ** var的结构:typedef struct {(...)int** my2Darray; } myStruct;void myCFunction( myStruct struct );我正在努力研究多维数组. 我的代码看起来像这样: 在接口文件中,我使用这样的carray:%include carrays.i %array_class( int, intArray ); %array_class( intArray, intArrayArray );在python中,我有:myStruct = myModule.myStruct() var = myM...

python – PIL Image构造来自numpy数组的奇怪图像 – 为什么?【代码】

我想要一种方法来生成红色,绿色或蓝色的小RGB方形图像.它应该产生坚固的色块,但PIL输出的图像非常奇怪.为什么?import numpy as np from PIL import Imageclass MakeSquares():def __init__(self):self.num_rows = 3self.num_cols = 3self.colourmap = {'red': [255, 0, 0],'green': [0, 255, 0],'blue': [0, 0, 255]}def generateExample(self, label):arr = []colour = labelcolour_array = self.colourmap[colour]for i in rang...

python – 随机将n个元素放在2D数组中【代码】

我需要一个布尔或二进制numpy数组大小(m,m),其中n个值随机分散.我正在尝试制作随机网格模式.我将有一个55数组,其上有3个True值,并且只会在这些点进行采样.使用random.choice我有时会得到多于或少于3个所需的True值.for x in range(0,25):x = np.random.choice([True,False], p=[0.15,0.85])解决方法:你可以用shuffle直接做到这一点:n = 3; m = 5 x = [True] * n + [False] * (m * m - n) np.random.shuffle(x) result = np.mat(x)...

python汇总每个索引中数组中的所有先前值【代码】

我有一个数组:my_array = [1, 4, 1, 13, 9]并且想要创建一个新数组,my_array中的每个索引都是以前所有索引值的总和summed_array = [0, 1, 5, 6, 19]我试过类似的东西for ind,i in enumerate(my_array):print i, my_array[ind-1]但无法弄清楚如何获得所有先前值的总和.解决方法: >>> from numpy import cumsum, ones >>> a = ones(10) >>> print(cumsum(a)) array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10.])

python – X * Y项的平均值并保持numpy数组的大小【代码】

你如何在二维阵列上取平均值例如四个附近的项目(2 * 2)?我的意见是:[[1,1,1,1],[1,1,0,0],[0,0,1,1],[0,0,0,0]]应该导致:[[1, 0.5],[0, 0.5]]numpy.mean(x.reshape(-1,4),1)将展平数组,并按错误的顺序略微平均四个项目. 附加信息 例如,通过此方法生成数组:n = 10 l = 100 A = np.zeros((l, l)) points = l*np.random.random((2, n**2)) A[(points[0]).astype(np.int), (points[1]).astype(np.int)] = 1 A = ndimage.gaussian_f...

如何在Python中将3d数组转换为数据帧【代码】

我有一个3d数组如下:ThreeD_Arrays = np.random.randint(0, 1000, (5, 4, 3))array([[[715, 226, 632],[305, 97, 534],[ 88, 592, 902],[172, 932, 263]],[[895, 837, 431],[649, 717, 39],[363, 121, 274],[334, 359, 816]],[[520, 692, 230],[452, 816, 887],[688, 509, 770],[290, 856, 584]],[[286, 358, 462],[831, 26, 332],[424, 178, 642],[955, 42, 938]], [[ 44, 119, 757],[908, 937, 728],[809, 28, 442],[832, ...

python – 一个numpy数组在更改另一个时意外更改,尽管它是分开的【代码】

我在我的大代码中发现了一个错误,我将问题简化为下面的案例. 虽然在每个步骤中我只改变w2,但是当我在每一步打印出w1时,它也会被改变,因为第一个循环的结束我将它们分配为相等.我读到了这个,但有写的以防万一我w1 = W2 [:]它会解决问题,但事实并非如此import numpy as np import mathw1=np.array([[1,2,3],[4,5,6],[7,8,9]]) w2=np.zeros_like(w1) print 'w1=',w1 for n in range(0,3):for i in range(0,3):for j in range(0,3):pr...

python – 当大于x 时替换数组中的值【代码】

参见英文答案 > Replace all elements of Python NumPy Array that are greater than some value 6个我有一个简单的想法有点问题.我有一个数据数组,如果值大于X,我想替换每个值. 为了解决这个问题,我写了一个小脚本作为例子给出了同样的想法:import numpy as np# Array creationarray = np.array([0.5, 0.6, 0.9825])print array# If value > 0.7 replace by 0.new_array = array[array > 0.7...

[Python]:生成所有可能组合的数组【代码】

我有一个非常简单的组合问题.我有两个数组(a和b).数组a表示数组b中三个插槽之一可以采用的所有值.数组b中的每个槽可以具有1到5之间的值.其示例是[1,4,5].我想生成一个包含所有可能组合的数组(c).我想扩展大型数组的基本示例. 输入:a = [1, 2, 3, 4, 5] b = [1, 2, 3]输出:c = [[1, 1, 1], [1, 1, 2],[1, 1, 3], [1, 1, 4], [1, 1, 5],[1, 2, 1], [1, 2, 2],[1, 2, 3], [1, 2, 4], [1, 2, 5],[1, 3, 1], [1, 3, 2],[1, 3, 3], [1,...

python – 在数组中查找特定值【代码】

我正在尝试将数组中的条件值插入到精确位置的空数组中.empty_array = np.zeros([40,100]) for x in range (1,24):array[x,:,:] #which is also sized 40x100if the_values_in_the_array < 0.25:the_values_in_the_array = 0empty_array = empty_array + array [x,:,:]我应该使用哪种语法来实现这种逻辑?我应该如何扫描the_values_in_the_array来查找条件值?解决方法: empty_array = np.zeros([40,100]) array = np.random.rand(2...

python – 在块矩阵中排列numpy数组【代码】

我有3个numpy数组A,B和C.为简单起见,我们假设它们都是形状[n,n].我想将它们安排为块矩阵A B B^t C其中B ^ t表示B的转置.当然,我可以通过一系列连接来做到这一点top_row = np.concatenate([A, B], axis=1) bottom_row = np.concatenate([B.transpose(), C], axis=1) result = np.concatenate([top_row, bottom_row], axis=0)有更简单,更易读的方式吗?解决方法:从NumPy 1.13开始,有np.block.这是从嵌套的块列表构建矩阵,但它也更...

将Python列表转换为Numpy数组InPlace【代码】

我有一个巨大的python列表(16 GB),我想将它转换为numpy数组,inplace.我承担不起这个说法huge_array = np.array(huge_list).astype(np.float16)我正在寻找一些有效的方法将这个huge_list转换为numpy数组,而不是复制它. 有谁能建议一个有效的方法来做到这一点?这可能涉及首先将列表保存到磁盘然后加载为numpy数组,我很好. 我非常感谢任何帮助. 编辑1:huge_list是一个内存python列表,它是在运行时创建的,所以它已经占用了16GB.我需要...

python – 比较数组的准确性【代码】

我有一个2阵列:np.array(y_pred_list).shape # returns (5, 47151, 10) np.array(y_val_lst).shape # returns (5, 47151, 10)np.array(y_pred_list)[:, 2, :] # returns array([[ 0., 1., 0., 0., 0., 0., 0., 0., 0., 0.],[ 0., 0., 0., 0., 0., 0., 0., 0., 0., 1.],[ 0., 0., 0., 0., 0., 0., 0., 0., 1., 0.],[ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],[ 0., 0., 0., 0., 0., 0....