将二维数组写入 .CSV 文件

时间:2021-01-15 18:14:36

标签: python arrays csv

抱歉,我知道这个话题已经讨论过好几次了,但我已经检查过类似的问题,但没有一个能解决我的问题。

我正在尝试以 (x,y,z) 格式获取多个坐标以写入 .csv 文件。坐标以可变大小的一维数组形式提供给我(因此我可以有 4 个点或 200 个)。要重新排列数组并将其写入 de csv 文件,我使用下面的代码

  points = numpy.array(data.point_cloud, dtype=numpy.dtype('f4'))
  points = numpy.reshape(points, (int(points.shape[0]/3), 3))
        with open('COORDINATES.csv', 'w') as my_csv:
            csvWriter = csv.writer(my_csv, delimiter=';')
            csvWriter.writerows(points)

打印给出以下输出

 [[-32.4 -21.5   0.1]
 [ 23.9  20.1   0.9]
 [-50.6  19.8   0.9]
 [ 14.3 -18.5   0.9]
 [-14.3  47.5   0.9]
 [-24.6 -21.5  -0.8]]

在写入坐标的同时,它还在元组之间留下一个空行,所以我的 COORDINATES.csv 看起来像这样:

CSV CONTENTS/EXCEL

CSV CONTENTS/NOTEPAD

Link to the CSV file

我希望所有的行都填满。我使用 ; 作为分隔符,因为这是我的 excel 在单元格中的分隔方式,如果我使用 , 我会得到几行,但该行的所有元素都在同一个单元格中.知道问题是什么或可能的解决方案吗?

注意:我唯一的限制是我不能使用熊猫

编辑:我留下了指向我的 .csv 文件的链接以及使用 Excel 和记事本打开时文件的屏幕截图。我还添加了一个额外的代码行来打印 points 数组的前 6 个元素

0 个答案:

没有答案