2017-05-13 11 views
0

私はPythonコードで2つの行列を含むデータセットをロードしています。これらの行列の名前はtrain_dataset_faceとtrain_dataset_audioで、読み方はnp.arraysのリストです。最後に、それらをnp.arraysのnp.arrraysとして変換します。最初はデバッグ時の私の行列は、次のようになります。リストを効率的なnp.arraysに変換する

enter image description here

enter image description here

は、その後、私は次のコードを使用してnp.arraysに変換:

train_dataset_face = np.array(train_dataset_face) 
train_dataset_audio = np.array(train_dataset_audio) 

を、最後に私のマトリックスは次のようになります。

enter image description here

train_dataset_faceの場合にはいくつかの奇妙な理由がありますが、私はtrain_dataset_audioの場合は持っていませんが、私の配列の各ベクトルの前にこの配列の表示を得ました。それを取り除くことは可能ですか?この「配列」の表示は、train_dataset_faceにいくつかのアルゴリズムを適用しようとすると問題が発生します。どのようなアイデアがここに起こった?

答えて

1

リスト内のすべての配列の形状が同じである場合は、train_dataset_audioではtrueですが、train_dataset_faceでは真ではありません。

>>> a = [numpy.array([1,2,3,4]), numpy.array([1,2,3,4])] 
>>> numpy.array(a) 
array([[1, 2, 3, 4], 
     [1, 2, 3, 4]]) 
>>> b = [numpy.array([1,2,3]), numpy.array([1,2,3,4])] 
>>> numpy.array(b) 
array([array([1, 2, 3]), array([1, 2, 3, 4])], dtype=object) 
+0

だから私は右、すべてのベクトルは同じ大きさを持っていることを確認する必要がありますか? –

関連する問題