Numpy 为什么在努比,官方更喜欢康康坦而不是hstack/vstack?
我发现关于Numpy 为什么在努比,官方更喜欢康康坦而不是hstack/vstack?,numpy,Numpy,我发现关于hstack/vstack的最新文档中提到“您应该更喜欢np.concatenate或np.stack” 但我认为它们的可读性比concatenate(a,0)或concatenate(a,1)所有3个“stack”函数都使用concatenate(就像np.append和column\u stack一样)。看看他们的代码很有启发性np.source(np.hstack)例如 它们所做的都是调整输入数组的尺寸,确保它们是1d或2d等,然后使用适当的轴调用连接。因此,从长远来看,知道如何
hstack
/vstack
的最新文档中提到“您应该更喜欢np.concatenate
或np.stack
”
但我认为它们的可读性比
concatenate(a,0)
或concatenate(a,1)
所有3个“stack”函数都使用concatenate
(就像np.append
和column\u stack
一样)。看看他们的代码很有启发性<代码>np.source(np.hstack)例如
它们所做的都是调整输入数组的尺寸,确保它们是1d或2d等,然后使用适当的轴调用连接。因此,从长远来看,知道如何使用串联
,而不需要其他人的“拐杖”,这是一个好主意
但人们将继续在方便的地方使用hstack
和vstack
<代码>数据堆栈
和列堆栈
不太常见np.append
经常被误用,应该被禁止使用
我认为这个“首选”注释是在添加np.stack
时添加的np.stack
也使用串联
,但使用的方式更为复杂。它插入一个新的轴(带有展开_dims
)。我把它看作是np.array
的推广。当给定匹配数组的列表时,np.array
将它们连接到一个新的初始轴上np.stack
的作用与默认值相同,但允许我们为串联指定不同的“新”轴
我应该限定我的答案。这不是官方的。更确切地说,我是在基于代码知识做出有根据的猜测