我有一個回傳二維陣列的復雜函式,為了簡單起見,讓我們考慮以下內容:
import numpy as np
def get_array():
a = np.array([[0, 9, 5]])
return a
是否有一個 numpy 命令允許我自動檢索單行而不是執行以下操作?
def get_array():
a = np.array([[0, 9, 5]])
if a.shape[0] == 1:
return a[0]
else:
return a
return a
非常感謝!
uj5u.com熱心網友回復:
np.squeeze(a)將從中洗掉任何單位大小的軸a。
>>> np.squeeze([1, 2, 3])
array([1, 2, 3])
>>> np.squeeze([[1, 2, 3]])
array([1, 2, 3])
>>> np.squeeze([[1, 2, 3], [4, 5, 6]])
array([[1, 2, 3],
[4, 5, 6]])
不過,它可能并不完全是您想要的,還有:
>>> np.squeeze([[1], [2]])
array([1, 2])
uj5u.com熱心網友回復:
在@orlp 回答之上,如果您意識到性能,ravel似乎比擠壓更快:

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/370332.html
上一篇:Numpy:唯一后的ID組
