Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中,将numpy数组形状从(1100)转换为(100)_Python - Fatal编程技术网

在python中,将numpy数组形状从(1100)转换为(100)

在python中,将numpy数组形状从(1100)转换为(100),python,Python,我有一个np.array,我想将它存储在mat文件中,然后从代码中加载它。将其存储到mat文件的代码如下: data = {'reduced_train_face': reduced_train_face.tolist(), 'reduced_train_audio': reduced_train_audio.tolist(), 'reduced_audio_labels': reduced_audio_labels.tolist()} m4p.savemat(

我有一个np.array,我想将它存储在mat文件中,然后从代码中加载它。将其存储到mat文件的代码如下:

data = {'reduced_train_face': reduced_train_face.tolist(),
        'reduced_train_audio': reduced_train_audio.tolist(),
        'reduced_audio_labels': reduced_audio_labels.tolist()}

m4p.savemat('data.mat', data)
reduced_audio_labels = np.array(data['reduced_audio_labels'])
然后检索信息的代码如下所示:

data = {'reduced_train_face': reduced_train_face.tolist(),
        'reduced_train_audio': reduced_train_audio.tolist(),
        'reduced_audio_labels': reduced_audio_labels.tolist()}

m4p.savemat('data.mat', data)
reduced_audio_labels = np.array(data['reduced_audio_labels'])
我注意到文件的类型正在改变。加载前的文件类型为:

当我加载文件时:

这一变化给我带来了几个问题。如何将:(1100)转换为:(100,)


将删除多余的维度

为什么要使用
.tolist()
保存数组,而不是直接保存数组本身?显然在其他情况下不起作用。从(1100)到(100,)有什么意义?一些库的方法确实关心一维和二维向量之间的差异(例如,对于机器学习应用程序),尽管如您可能建议的那样,直觉上并不觉得它们应该太不同。