我正在使用python(特别是numpy,scipy和matplotlib)来读取多个文件中的数据。具体来说,我正在尝试提取Z值9个不同的点云数据集(.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值。我只是坚持我将如何实际执行此操作,我的当前代码的设置方式只是覆盖了值。
非常感谢任何建议/观看的地方。
答案 0 :(得分:1)
您有什么理由不能将所有值都附加到单个列表中吗?
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])
这似乎是最简单的解决方案。