我正在尝试保存5D数组,但出现此错误。

> Traceback (most recent call last):   File "model_3.py", line 53, in
> <module>
>     np.savetxt('../test_set/exp3/X.txt', X_test, delimiter=' ', fmt='%1.12f')   File
> "/home/jasper/.virtualenvs/thesis/local/lib/python2.7/site-packages/numpy/lib/npyio.py",
> line 1160, in savetxt
>     % (str(X.dtype), format)) TypeError: Mismatch between array dtype ('float64') and format specifier ('%1.12f %1.12f %1.12f')

最佳答案

savetxt遍历数组的第一维,并为每个“行”尝试执行以下操作:

format % tuple(row)


根据您的format和数组形状(fmt)构造的X.shape[1]

'%1.12f %1.12f %1.12f'


如果数组不是2d,则row将不是1d,并且此tuple(row)转换将不匹配format

savetxt设计用于简单的2d数组(或1d结构化数组),而不是5d数组。

关于python - numpy savetxt TypeError,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36525713/

10-10 11:40