开发者社区> 问答> 正文

Python:区分行向量和列向量

有没有一种很好的方法来区分python中的行向量和列向量?到目前为止,我正在使用numpy和scipy,到目前为止,我看到的是,如果我要给一个向量,说

from numpy import * Vector = array([1,2,3]) 他们将无法说天气,我的意思是行或列向量。此外:

array([1,2,3]) == array([1,2,3]).transpose() True 在“现实世界”中哪一个根本是不正确的。我意识到提到的模块中向量上的大多数功能都不需要区分。例如,outer(a,b)或者a.dot(b)我想为自己的方便而与众不同。 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-09 13:14:31 744 0
1 条回答
写回答
取消 提交回答
  • 您可以通过向数组添加另一个维度来明确区分。

    a = np.array([1, 2, 3]) a array([1, 2, 3]) a.transpose() array([1, 2, 3]) a.dot(a.transpose()) 14 现在将其强制为列向量:

    a.shape = (3,1) a array([[1], [2], [3]]) a.transpose() array([[1, 2, 3]]) a.dot(a.transpose()) array([[1, 2, 3], [2, 4, 6], [3, 6, 9]]) 想要区分时,另一个选择是使用np.newaxis:

    a = np.array([1, 2, 3]) a array([1, 2, 3]) a[:, np.newaxis] array([[1], [2], [3]]) a[np.newaxis, :] array([[1, 2, 3]])

    2020-02-09 13:14:42
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载