我有一个数字数组,如下所示:
import pandas as pd
import numpy as np
np.random.seed(10)
data = np.random.randint(0, 10, size=(1000, 4, 3))
我希望能够将这些数据压缩成一个包含12列和1000行的df。
我所做的是:
df = pd.DataFrame( index=range(data.shape[0]))
for i in range(data.shape[1]):
for j in range(data.shape[2]):
df[str(i)+'_
我从一个文件中读取了一个4D数组,该文件以2D形式i,j,k,x,y,z给出。我使用numpy.reshape将2D数组重塑为它的3-D形式。对此进行更改后,我希望以与读取时完全相同的顺序/格式写入文件。我不明白如何“反转”numpy.reshape以将其放回相同的格式。
import numpy as np
import pandas as pd
from pandas import read_csv
header = read_csv("Input/Grid1_test.csv", nrows=1,skipinitialspace=True)
print h
我将RGB图像(32 X 32 X 3)保存为3D numpy数组,我将其用作我的神经网络的输入(使用tensorflow)。为了使用它们作为输入,我使用reshape (1,-1)将它们重塑为1DNP数组(1 X 3072)。当我训练完我的网络后,我想重新整形输出,但是使用reshape(32,32,3)似乎没有提供期望的结果。
这是正确的做法吗?我如何确保每个数据都会回到正确的位置?
我想要创建一个3d numpy数组,使用2d numpy数组作为循环,我尝试了许多不同的方法从2d创建3d数组,但是每次都会给我带来错误。这就是我所做的,端点数组应该有一个(10,3,3)的维度。
#this is a sample code
arr=[]
for i in range(10):
a=np.random.rand(3,3)
arr=np.stack(a,arr)
#arr=np.append(arr,a)
#arr=np.array([arr,a])
#arr[i]=a
给定一个函数f(u,v) -> z,该函数接受2个对象(比如BitVectors)作为输入,并返回单个输出值z。在调用函数f之前,如何将用np.meshgrid创建的两个2dint数组映射到2d对象数组? import numpy as np
from BitVector import BitVector
def f(u : BitVector, v : BitVector) ->float:
# ..
return my_float
# Vectors of objects
x_bitv = [BitVector(intVal = i) for i in range
嗨,我从头开始编写了一个YOLO模型,然后才意识到我的数据集不适合模型的输出。这就是我的意思:模型输出一个S x S x (B * 5 + C)矩阵。y0的形状是(7,5)。我如何让模型使用我的标签。根据我所知道和阅读的内容,标签以yolo算法的x,y,w,h,objectiveness_score, class_scores格式出现,所以为什么模型将输出3D矩阵,而标签是2d矩阵。 我如何通过使用numpy和keras来解决我的问题?
对于numpy数组,我发现
x = numpy.array([]).reshape(0,4)
很好,并且允许我将(0,4)数组追加到x,而不会丢失数组的结构(例如,它不仅仅是一个数字列表)。然而,当我尝试
x = numpy.array([]).reshape(2,3)
它会抛出一个错误。为什么会这样呢?
我有一个三维数字阵列A的形状(m,n,300)和一个二维数字阵列B的形状(p,300)。
对于三维数组中的每个m (n,300)矩阵,我想用2D numpy数组计算它的余弦相似矩阵。目前,我正在做以下工作:
result = []
for sub_matrix in A:
result.append(sklearn.metrics.pairwise.cosine_similarity(sub_matrix, B)
sklearn cosine_similarity函数不支持3D数组的操作,那么是否有一种更有效的计算方法不需要使用for-循环?
最后,我对此感到困惑了一段时间,所以我想我应该用Q&A格式进行文档编写--尽管更详细的解释是非常欢迎的。
比方说,我有一个2D的numpy数组,比如下面的xm:
$ python3
Python 3.8.9 (default, Apr 3 2021, 09:30:04) [GCC 10.2.0 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
import numpy as np
可以用PyAV直接将视频读入3D Numpy吗?目前,我正在遍历每一帧:
i = 0
container = av.open('myvideo.avi')
for frame in container.decode(video=0):
if i == 0: V = np.array(frame.to_ndarray(format='gray'))
else: V = np.dstack((V, np.array(frame.to_ndarray(format='gray'))))
i += 1
第一帧定义了一个2D Num
我有一个3D numpy数组,我想在它前面添加一个0的2D np数组。
import numpy as np
A = np.zeros(3,3,3)
for i in np.arange(0,2):
for j in np.arange(0,2):
for k in np.arange(0,2):
A[i,j,k] = 10
print(A)
#returns:
[[[10. 10. 0.]
[10. 10. 0.]
[ 0. 0. 0.]]
[[10. 10. 0.]
[10. 10. 0.]
[ 0. 0.
我有一个二维numpy数组(Arr),它只有0和1。 例如,形状为(h,w)的2dnumpy数组。 我想要调整数组的大小以形成形状(h // scale,w // scale),并且我需要保留所有的1。 # arr is a 2d numpy array
h, w = arr.shape
h_new, w_new = h // scale, w // scale
arr_new = np.zeros((h_new, w_new))
for i in range(h):
for j in range(w):
if arr[i, j] == 1:
我有一个100x100x100 numpy数组,它表示由2D片组成的3D卷。
我想要在这卷中的一个对象之间进行互相关联,在这些卷上使用一个从卷中创建的模板,用最好的信号到噪声。
为了让事情变得更简单,我尝试做2D互相关,然后通过在每个切片上做correlate2d,然后将该切片放入一个3D数字数组来建立3D体积。
我已经测试了correlate2d函数,而且所有的功能似乎都很好,但是我希望能够提取出其中任何一个切片的任何部分,并根据测量的协调来制作模板。
#inputdata, a 3D numpy array with x , y and z image data.
mrc = np.arr
我有一个巨大的2Dnumpy数组(dtype=bool)和一个缓冲区,我想将这个2D数组写入缓冲区。目前,我做了以下工作: # Python version 3.7.7, NumPy version 1.18.5
# shape in the dummy_array is just an example, sometimes will be bigger
dummy_array = np.array(np.empty((599066148, 213), dtype='bool'), dtype='bool')
# Pyarrow plasma store b
下面的代码与预期的一样工作,但我很好奇是否可以用本机numpy函数/方法替换循环,以获得更好的性能。我拥有的是一个包含RGB值(用作查找表)的数组和两个保存灰度值(0-255)的2d数组。这两个数组的每个值对应于查找表的一个轴的值。
如前所述,真正好的是摆脱python中的(slow)循环,并使用更快的numpy方法。
#!/usr/bin/env python3
from PIL import Image
import numpy as np
dim = (2000, 2000)
rows, cols = dim
# holding a 256x256 RGB color lookup
我有一个形状为1xN的numpy布尔向量,以及一个形状为160xN的2d数组。什么是对2d数组的列进行子化的快速方法,以便对于其中包含True的布尔向量的每个索引,保留该列,而对于其中包含False的布尔向量的每个索引,丢弃该列?
如果调用向量掩码和数组特性,我发现以下内容太慢了:np.array([f[mask] for f in features])
有没有更好的方法?我觉得这是必须的,对吧?
我试图理解与列表列表相比,使用numpy列表对numpy object数组的内存和其他开销的影响。
会随着维数的变化而改变吗?(如2D vs 3D vs N-D )。
我在使用.shape,.T数组时可以想到的一些好处是,像numpy这样的东西可以更快地将它们转换为np.matrix矩阵。
还有别的事吗?
另外,如果有人感兴趣,我使用的对象是:
import gmpy2 as gm
gm.mpfr( '0' ) # <-- this is the object
编辑:
为了澄清一下,我对n