Python 3.5.1中2d数组的numpy.savetxt

Python 3.5.1中2d数组的numpy.savetxt,numpy,save,python-3.5,Numpy,Save,Python 3.5,我的问题与有关,但我无法使该解决方案起作用,不想在旧问题中添加我自己的方案 我有一个2D浮点numpy数组,我正在运行带有numpy 1.10.4的python 3.5.1,并试图用 numpy.savetext(filename, arrayname, delimiter = ',') 它与1D阵列配合使用效果极佳。 我已经尝试了引用文章中的解决方案 with open(filename, 'ab') as f: numpy.savetext(f, arrayname, delim

我的问题与有关,但我无法使该解决方案起作用,不想在旧问题中添加我自己的方案

我有一个2D浮点numpy数组,我正在运行带有numpy 1.10.4的python 3.5.1,并试图用

numpy.savetext(filename, arrayname, delimiter = ',') 
它与1D阵列配合使用效果极佳。 我已经尝试了引用文章中的解决方案

with open(filename, 'ab') as f:
    numpy.savetext(f, arrayname, delimiter = ',')
无济于事。事实上,我在没有分隔符的情况下,以及在使用“w”、“wb”、“a”和格式化参数的情况下,都尝试过这样做,但总是得到相同的错误消息:

TypeError: Mismatch between array dtype ('float64') and format specifier.

我需要将这个2D数组写入一个文件,该文件稍后将被读取到一个panda数据帧中(已经使用read.csv)。我了解numpy.savetxt可能存在此问题,因此我正在寻找替代方案。

请尝试一个简单的示例并发布结果,因为以下内容对我适用:

import numpy as np

array1=np.array([[1,2],[3,4]])
np.savetxt('file1.txt', array1 , delimiter = ',') 
文件内容:

 1.000000000000000000e+00,2.000000000000000000e+00
 3.000000000000000000e+00,4.000000000000000000e+00

我收到了同样的错误消息——直到我最终意识到我的输出类型实际上是一个列表,而不是一个numpy数组

是不是命令
numpy.savetxt()
?好的,在玩了更多之后,现在很明显我实际上有一个3d数组,而不是2d数组,我需要将其保存到一个文件中,该文件既可以读取为R数据帧(最终重新格式化为长格式),也可以读取为numpy数组。