我正在使用 python(特别是 numpy、scipy 和 matplotlib)从多个文件中读取数据。具体来说,我正在尝试提取 9 个不同点云数据集的 Z 值(.ply 格式:X、Y、Z、R、G、B)。
使用提取的 Z(或高度值),我尝试制作高度的相对频率直方图,其中包含 9 个文件中每个 bin 的平均相对频率、标准差和置信区间。
我有一个针对单个文件执行此操作的工作代码,但在尝试将其扩展为处理 9 个文件时遇到困难。我可以简单地使用多行冗余代码进行暴力破解,但我正在努力提高效率。
我有一些代码的效果:
filelist = os.listdir('path to 9 ply files')
for files in filelist:
CAM_XYZ = loadtxt(files,skiprows = 14, usecols = (0,1,2))
CAMt = transpose(CAM_XYZ)
CAM_Z = CAMt[2]
我想从每个文件中提取 Z 值/列,然后将它们附加到另一个数组。理想情况下,这个最终数组将有 9 列,每个文件的 Z 值。我只是坚持我将如何实际执行此操作,我当前代码的设置方式只是覆盖值。
如有任何建议/查看地点,我们将不胜感激。
请您参考如下方法:
有什么理由不能将所有值附加到一个列表中?
filelist = os.listdir('path to 9 ply files')
z_values = []
for files in filelist:
CAM_XYZ = loadtxt(files,skiprows = 14, usecols = (0,1,2))
CAMt = transpose(CAM_XYZ)
z_values.append(CAMt[2])
这似乎是最简单的解决方案。
