2015-08-19 91 views
1

我是一個Matlab新手,完全被這個難倒:我試圖用「加載」來讀取兩個.mat文件。一個很好。當我使用「負載‘/home/filepath/file2.mat’」來加載其他的,我得到錯誤使用加載,無法讀取文件中的Matlab

Error using load 
Can't read file 

如果我請與「存在file2.mat」或「存在file1.mat」,我看「ans = 2」(與完整文件路徑相同)。他們具有相同的權限並且大小相似。任何想法可能會發生在這裏?

我在Python中構建了.mat文件,所以肯定有可能文件本身就是問題的根源。我用SciPy的,具體是:

scipy.io.savemat('./file2.mat', mdict={'WO_scopus': np.asarray(all_unique_word, dtype='object').reshape(len(all_unique_word), 1)}) 
scipy.io.savemat("./file1.mat", mdict={"AN_scopus":np.asarray(all_unique_author, dtype='object').reshape(len(all_unique_author), 1)}) 

「衛生組織-file file2.mat」 產生

Name    Size    Bytes Class Attributes 

    WO_scopus  137119x1    17711126 cell  

這似乎是正確的。

+3

我們肯定需要更多信息才能幫助您。 Post Matlab的輸出?你從哪裏得到.mat文件? –

+0

@MattTaylor - 添加了一些更多的信息,讓我知道如果有辦法讓我提供更有用的東西 –

+0

該文件被稱爲'file2.mat',而不是'file2'。加載時使用正確的名稱。 – Daniel

回答

0

原來,這是一個大型數據集的編碼問題,雖然我會期待MatLab發生更具體的錯誤。我通過在Python腳本中迭代我的輸出列表並在發送到savemat之前使用.encode('utf-8')來解決此問題。

相關問題