将numpy数组转储到excel文件中

我想使用savetxt方法将numpy数组转储到excel文件中,但在控制台上出现这个奇怪的错误:

.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e,%.18e') Process finished with exit code 1 

这是我想转储的numpy数组的细节:

 [[[ 0.47185326 0.07954808 0.02773202 ..., 0.05631305 0.08299649 0.03780528] [ 0.62651747 0.06029205 0.01570348 ..., 0.03766847 0.06287122 0.02287979] [ 0.72675145 0.04626036 0.0107195 ..., 0.02535284 0.04664176 0.01519825] ..., [ 0.10476404 0.57678992 0.04675674 ..., 0.02255989 0.06741234 0.0170289 ] [ 0.13148287 0.47490281 0.06038339 ..., 0.03263607 0.07844847 0.02505469] [ 0.14134221 0.35699606 0.07600202 ..., 0.04766588 0.09139989 0.0386818 ]]] Type of first_layer_output : <class 'numpy.ndarray'> Shape of first_layer_output : (1, 921600, 10) 

我正在使用savetxt这种方式:

 np.savetxt('test.csv', first_layer_output, delimiter=',') 

我不知道这里有什么问题,因此任何帮助将不胜感激:)

你可以使用pandas,它非常容易使用。

 import pandas ## convert your array into a dataframe df = pd.DataFrame (array) ## save to xlsx file filepath = 'my_excel_file.xlsx' df.to_excel(filepath, index=False) 

希望能帮助到你!

有点晚了,但可能会帮助其他人面临这样的问题。

这个错误是因为你似乎已经设置

dtype = np.ndarray

当创build/定义您的Numpymatrixfirst_layer_output。

解决这个问题的一个办法是修改你的命令存储

 np.savetxt('test.csv', first_layer_output, delimiter=',', fmt='%s') 

这个命令现在输出数组的内容作为一个string,而不pipe正在使用的实际数据types。 希望这可以帮助。