对numpy中数组转置的求解以及向量内积计算方法

yipeiwu_com6年前Python基础

有点抱歉的是我的数学功底确实是不好,经过了高中的紧张到了大学之后松散了下来。原本高中就有点拖后腿的数学到了大学之后更是一落千丈。线性代数直接没有学明白,同样没有学明白的还有概率及统计以及复变函数。时至今日,我依然觉得这是人生中让人羞愧的一件事儿。不过,好在我还有机会,为了不敷衍而去学习一下。

矩阵的转置有什么作用,我真是不知道了,今天总结完矩阵转置的操作之后先去网络上补充一下相关的知识。

今天的代码操作如下:

In [15]: arr1 = np.arange(20)


In [16]: arr1
Out[16]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
    17, 18, 19])


In [17]: arr2 = arr1.reshape((4,5))


In [18]: arr2
Out[18]:
array([[ 0, 1, 2, 3, 4],
    [ 5, 6, 7, 8, 9],
    [10, 11, 12, 13, 14],
    [15, 16, 17, 18, 19]])


In [19]: arr3 = arr2.T


In [20]: arr3
Out[20]:
array([[ 0, 5, 10, 15],
    [ 1, 6, 11, 16],
    [ 2, 7, 12, 17],
    [ 3, 8, 13, 18],
    [ 4, 9, 14, 19]])


In [21]: np.dot(arr3,arr2)
Out[21]:
array([[350, 380, 410, 440, 470],
    [380, 414, 448, 482, 516],
    [410, 448, 486, 524, 562],
    [440, 482, 524, 566, 608],
    [470, 516, 562, 608, 654]])

Reshape的方法是用来改变数组的维度,而T的属性则是实现矩阵的转置。从计算的结果看,矩阵的转置实际上是实现了矩阵的对轴转换。而矩阵转置常用的地方适用于计算矩阵的内积。而关于这个算数运算的意义,我也已经不明确了,这也算是今天补课的内容吧!

关于前面的两个补课,看了一堆资料确实是不好理解。但是总是记忆公式终归不是我想要的结果,以后还需要不断地尝试理解。不过,关于内积倒是查到了一个几何解释,而且不知道其对不对。解释为:高维空间的向量到低维子空间的投影,但是思索了好久依然是没有弄明白。看来,线性代数还是得闷头好好理解一下咯。

以上这篇对numpy中数组转置的求解以及向量内积计算方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python文件读写保存操作的示例代码

记录下第一次使用Python读写文件的过程,虽然很简单,第一次实现其实也有些注意的事项。 单个文件的读操作: 我们先假设一个需求如下: 读取一个test.txt文件 删除指...

python开发游戏的前期准备

python开发游戏的前期准备

本文章面向有一定基础的python学习者,使用Pygame包开发一款简单的游戏 首先打开命令行,使用PyPI下载Pygame包(输入命令pip install pygame) 打开py...

十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)

十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)

话不多说,直接开搞! 练习项目一:即时标记 补充utils.py: 练习项目二:画幅好画 练习项目三:万能的XML 练习项目四:新闻聚合...

python编写微信公众号首图思路详解

python编写微信公众号首图思路详解

前言 之前一直在美图秀秀调整自己的微信公众号首图,效果也不尽如人意,老是调来调去,最后发出来的图片被裁剪了一大部分,丢失部分关键信息,十分恼火,于是想着用python写一个程序,把微信公...

selenium2.0中常用的python函数汇总

本文总结分析了selenium2.0中常用的python函数。分享给大家供大家参考,具体如下: 新建实例driver = webdriver.Firefox() 此处定位均使用的百度首...