它必須是那些日子之一。我一直可以使用函數tofile來保存數據。但由於某些原因,今天它不工作:)「OSError:無法以二進制模式將對象數組寫入文件」
import numpy as np
blah.....
print(type(blist))
npdata = np.array(blist)
print(type(npdata))
npdata.tofile('myfile.dat')
獲取我的結果如下:
Traceback (most recent call last):
File "C:/context.py", line 67, in <module>
npdata.tofile('myfile.dat')
OSError: cannot write object arrays to a file in binary mode
<class 'list'>
<class 'numpy.ndarray'>
所以說我必須以二進制方式打開文件。但據我所知,我不是以二進制模式打開它。
編輯(問題解決後):當我發佈這個問題時,我假定blist是一個整數列表。相反,它是一列整數列表。問題是,當我創建它時,我得到了一個dtype = object,而不是我期待的dtype = int32。
士氣:確保正確使用np.append/np.extend並始終明確設置dtype。
顯示一些重現問題的示例數據。你期待一個'object' dtype嗎? –