我是一个Matlab新手并且完全被这个困扰:我正在尝试使用“load”来读取两个.mat文件。一个工作正常。当我使用“load'/home/filepath/file2.mat'”来加载另一个时,我得到了
Error using load
Can't read file
如果我查看“exists file2.mat”或“exists 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)})
“whos -file file2.mat”生成
Name Size Bytes Class Attributes
WO_scopus 137119x1 17711126 cell
这似乎是正确的。
答案 0 :(得分:0)
原来这是较大数据集上的编码问题,但我预计MatLab会出现更具体的错误。我通过迭代Python脚本中的输出列表并在发送到savemat之前使用.encode('utf-8')来解决这个问题。