gpt4 book ai didi

numpy - 使用 numpy 转置向量

转载 作者:行者123 更新时间:2023-12-03 22:50:53 25 4
gpt4 key购买 nike

我遇到了 Ipython - Numpy 的问题。我想做以下操作:

x^T.x

formula和 x^T 向量 x 上的转置操作。 x 是从一个 txt 文件中提取的,指令如下:
x = np.loadtxt('myfile.txt')

问题是,如果我使用转置功能
np.transpose(x)

并使用形状函数来知道 x 的大小,我得到 x 和 x^T 的相同尺寸。 Numpy 在每个维度后给出带有 L 大写索引的大小。例如
print x.shape
print np.transpose(x).shape

(3L, 5L)
(3L, 5L)

有人知道如何解决这个问题,并将 x^T.x 计算为矩阵乘积吗?

谢谢!

最佳答案

什么 np.transpose确实是反转形状元组,即你给它提供一个形状数组 (m, n) ,它返回一个形状为 (n, m) 的数组,你给它一个形状数组 (n,) ...它返回与形状相同的数组 (n,) .

您隐含地期望 numpy 将您的一维向量作为二维形状数组 (1, n) ,这将被转置为 (n, 1)向量。 Numpy 不会自行执行此操作,但您可以告诉它这就是您想要的,例如:

>>> a = np.arange(4)
>>> a
array([0, 1, 2, 3])
>>> a.T
array([0, 1, 2, 3])
>>> a[np.newaxis, :].T
array([[0],
[1],
[2],
[3]])

关于numpy - 使用 numpy 转置向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19238024/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com