そのため、リストに読み取ったCSVファイルがあります。そのリストを配列に変換し、次の関数を使用して配列を MATLAB ファイルに保存しました。
def save_array(arr,filename):
import scipy.io
out_dict={}
out_dict[filename]=arr
scipy.io.savemat(filename + '.mat',out_dict)
しかし、MATLAB ファイルを開くと、問題が発生します。Python で開くと、次の出力が得られます。
{'M': array([[u'153 ', u'81 ', u'0.28 ', ..., u'0.19 ', u'-0.07', u'1 '],
[u'168 ', u'76 ', u'0.08 ', ..., u'0.98 ', u'0.42 ', u'0 '],
[u'184 ', u'92 ', u'0.18 ', ..., u'0.92 ', u'0.75 ', u'0 '],
...,
[u'183 ', u'62 ', u'0.57 ', ..., u'0.87 ', u'0.31 ', u'0 '],
[u'181 ', u'72 ', u'0.48 ', ..., u'0.91 ', u'1.2 ', u'0 '],
[u'158 ', u'77 ', u'1.01 ', ..., u'0.99 ', u'0.88 ', u'0 ']],
dtype='<U5'),
'__globals__': [],
'__header__': 'MATLAB 5.0 MAT-file Platform: posix, Created on: Tue Nov 5 15:28:57 2013',
'__version__': '1.0'}
u
各要素の先頭に a があるのはなぜですか? どうすればこれを修正できますか?