簡體   English   中英

預期 2D 數組,得到 1D 數組:array=[5.6 7. ]。 使用 array.reshape(-1, 1) 重塑數據

[英]Expected 2D array, got 1D array instead: array=[5.6 7. ]. Reshape your data either using array.reshape(-1, 1)

當我們通過預測找到價值但我收到一個錯誤

"Expected 2D array, got 1D array instead:
array=[5.6 7. ].
Reshape your data either using array.reshape(-1, 1) if your data has a 
  single feature or array.reshape(1, -1) if it contains a single sample."

這是錯誤請解決我的問題這是非常復雜的錯誤這就是為什么我沒有收到錯誤解決方案

您剛剛打印了錯誤,但錯誤本身給出了解決方案。

如果 function 僅接受 2 D 數組,則任何numpy.ndarray都可以通過 numpy.reshape(

現在請觀察 reshape 操作的效果,這里(1, -1) ,前1表示數組的第一個維度, -1表示或僅用於扁平化數組,以防您有維度大於 2 的數組。

對於一維數組,您還可以使用(1, len(arr))

import numpy
arr = = numpy.array([1, 3, 5, 6, 7, 8, 8])
numpy.reshape(arr, (1, -1))
numpy.reshaoe(arr, (1, len(arr)))

兩種重塑都有相同的結果。 Output

>>> array([[1, 3, 5, 6, 7, 8, 8]])  # output of numpy.reshape(arr, (1, -1))
>>> array([[1, 3, 5, 6, 7, 8, 8]])  # output of numpy.reshape(arr, (1, len(arr)))

因此,重塑使您的陣列與您正在使用的 function 兼容,但如果 function 不包括 2D 並且您擁有 1D 陣列,則應該有一些有意義的方法將您的 1-D 事物轉換為 2-D。

意味着如果 function 接受 2D 圖像,並且您有 1D 音頻序列,那么確實應該有完整的轉換方式。

如果您也可以提及,幫助將是真正的幫助。 現在,我們正在猜測我們的想法認為您需要什么。

所以總是在提問之前請花一些時間來構思問題,這樣可以保證得到答案並解決問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM