【问题标题】:Write NDArray into JSON and .CV File将数组写入 JSON 和 .CSV 文件
【发布时间】:2013-02-03 14:43:35
【问题描述】:

我有一个大小为 9742 行 x 26 列的 ndarray。它有日期、整数、浮点数等类型,以及“日期”、“金额”、“标记”等列标题......问题是,我想将它逐行保存到另一个文件中。我希望你能帮我做这件事。

我尝试使用:

for k1 in range(1,len(arr)):
    c.writerow([arr[index[1:27]][k1]])

但它给了我一个不可散列的类型错误。 index 是一个 python 映射,我用它来循环列标题,如 1:“日期”,2:“金额”等等......

我还想将其写入 JSON 文件。虽然我没有使用 JSON 的经验。如果您能帮我解决这个问题,我将不胜感激。

【问题讨论】:

  • 我们需要有关您的阵列的更多信息。它是 dtype 中有 26 个字段的结构化数组吗? index[1:27] 是否返回这些字段名称?
  • 哦,dtype 是:datetime.datetime、int、float 等等...希望能回答问题?

标签: python json csv file-io numpy


【解决方案1】:

您最好使用numpy.savetext(),而不是尝试手动编写每一行。在这种情况下,您可以使用:

numpy.savetxt(filename, arr, header=arr.dtype.names)

您也可以尝试使用以下方式将您正在写入的内容转换为字符串:

for arr_row in arr:
    c.writerow(" ".join(map(str, arr_row)))

【讨论】:

    猜你喜欢
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    • 2016-12-21
    • 2023-03-31
    • 2018-03-08
    • 2020-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多