s.k*_*s.k 0 python arrays numpy
为了在numpy.ndarray中存储许多3D点坐标元组,我在为每个特征输入循环之前初始化一个空的numpy数组.
为此,我目前在进入循环之前执行此操作:
import numpy as np
pointsarrray = np.empty((1,3))
Run Code Online (Sandbox Code Playgroud)
但这会产生一个几乎为空的数组:
array([[ 5.30498948e-315, 0.00000000e+000, 7.81250000e-003]])
Run Code Online (Sandbox Code Playgroud)
在填充pointsarray我的循环之后,我这样做:
pointsarray = np.vstack((pointsarray, [np.array(myPoint)]))
Run Code Online (Sandbox Code Playgroud)
(它也适用于np.append)
我最后需要在退出循环后删除数组的第一行,因为第一行总是包含初始化步骤中的值!
这不是什么大问题,但我想知道是否有一种更清洁的方法来实现一个真正空的阵列,我的意思是; 里面什么都没有(它显示了一行,我无法弄清楚为什么)但是在正确的尺寸?
您需要将形状设置为(0, 3)具有要堆叠的正确列数,但实际上没有数据:
import numpy as np
pointsarrray = np.empty((0,3))
pointsarrray
# array([], shape=(0, 3), dtype=float64)
Run Code Online (Sandbox Code Playgroud)