对于某些数据集,我具有csv格式的元数据文件。对于给定的数据集,我的代码将元数据csv文件(meta_train.csv)转换为熊猫数据框,然后将其转换为.mat文件。我在Jupyter env中使用Python3,下面是我的代码;
df_train=pd.read_csv(meta_train)
names = df_train.columns
arrays = [ df_train[col].get_values() for col in names ]
formats = [ array.dtype if array.dtype != 'O'
else f'{array.astype(str).dtype}' for array in arrays ]
myrec= fromarrays( arrays, dtype={'names': names, 'formats': formats} )
sio.savemat(os.path.join(dest,'TrainSet'+ '.mat'), {'metaInfo':myrec})
代码正在运行。但是最奇怪的事情发生了。创建.mat文件后,我在Matlab中将其打开,对于某些数据集,结构数组看起来像我想要的样子-行向量(1x9980),对于另一个数据集,结构是列向量(6695x1),如下图所示,仅显示5个字段名称。我使用的是上面相同的代码,因为无法弄清楚为什么会发生这种情况,所以我不知道如何解决此问题?