【Python矩阵转置】| 试使用多方法实现[通俗易懂]

【Python矩阵转置】| 试使用多方法实现[通俗易懂]矩阵的重要性:实际存储数据通常包含有特征根或是特征向量,是重要。借助Python实现矩阵运算不可或缺。在此过程中,矩阵的转置至关重要。下为几种常见的矩阵转置方法:方法一:(直接法)#step1:#初始化原始矩阵matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]#通过函数指出矩阵的行与列row=len(matrix)col=len(matrix[0])#step2:#交换矩阵的行与列ROW=

大家好,又见面了,我是你们的朋友全栈君。

        存储数据的矩阵通常包含有特征向量,对特征根求解至关重要。

        此外,矩阵的转置也不可或缺。

        拉格朗日乘数、求解最小二乘问题,函数f斜率是矩阵A,约束条件c的斜率是矩阵B, 在相切点上 A等于B的转置(或者B的转置的X倍)。

        下为几种常见的矩阵转置方法:

  • 方法一:

#step1: 
#初始化原始矩阵
matrix = [[1,2,3,4],
         [5,6,7,8],
         [9,10,11,12]]
#通过函数指出矩阵的行与列
row = len(matrix)
col = len(matrix[0])

#step2:
#交换矩阵的行与列
ROW = col
COL = row

#step3:
#初始化矩阵中的所有元素
Tmatrix = []
for i in range(ROW):
    Tmatrix.append([])
    for j in range(COL):
        Tmatrix[i].append(0)
        
#step4:
#转置矩阵赋值
for i in range(row):
    for j in range(col):
        Tmatrix[j][i] = matrix[i][j]
Tmatrix
  • 方法二:

matrix = [[1,2,3,4],
         [5,6,7,8],
         [9,10,11,12]]
Tmatrix = []
for i in range(4):
    Tmatrix_row = []
    for row in matrix:
        Tmatrix_row.append(row[i])
    Tmatrix.append(Tmatrix_row)
Tmatrix
  • 方法三:

matrix = [[1,2,3,4],
         [5,6,7,8],
         [9,10,11,12]]
Tmatrix = []
for i in range(4):
     Tmatrix.append([row[i] for row in matrix])
Tmatrix
  • 方法四:

matrix = [[1,2,3,4],
          [5,6,7,8],
          [9,10,11,12]]
Tmatrix = [[row[i] for row in matrix] for i in range(4)]
Tmatrix

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137808.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SpringBoot创建maven多模块项目(实战)

    SpringBoot创建maven多模块项目(实战)SpringBoot创建maven多模块项目(实战)工作中一直都是一个人奋战一人一个项目,使用maven管理,看这个也挺好,但是总感觉没有充分发挥maven的功能,于是研究了一下这个,网上关于这个的文章很多,虽然不是很好,但我从中收获了很多,在这集百家所长,写一份实战记录,大家跟着我一块做吧!声明:构建多模块不是最难的,难点是如果把多模块打包成一个执行jar。……

    2022年10月13日
    3
  • 4G技术TDD和FDD分别指什么「建议收藏」

    4G技术TDD和FDD分别指什么「建议收藏」TDD和FDD分别指什么;   TDD(Time Division Duplexing)时分双工技术,在移动通信技术使用的双工技术之一,与FDD相对应。   在TDD模式的移动通信系统中,基站到移动台之间的上行和下行通信使用同一频率信道(即载波)的不同时隙,用时间来分离接收和传送信道,某个时间段由基站发送信号给移动

    2022年6月9日
    61
  • 动静分离架构[通俗易懂]

    动静分离架构[通俗易懂]1.应用场景了解更多,根据具体场景选用不用的技术进行架构优化. 2.学习/操作 一、静态页面 静态页面,是指互联网架构中,几乎不变的页面(或者变化频率很低),例如: 首页等html页面 js/css等样式文件 jpg/apk等资源文件 静态页面,有与之匹配的技术架构来加速,例如: CDN ngi…

    2022年4月29日
    45
  • ant man 什么意思,ant[通俗易懂]

    Alongdikewillcollapseauseofanant-holeinit;atallbuildingwillbeburneddownbyasparkfromachimney”schink.千丈之堤,以蝼蚁之穴溃;百尺之屋,以突隙之烟焚。Regardlessofclassorwithadifferentantspeciesa…

    2022年4月9日
    45
  • 键盘记录器,可截获到 QQ 的密码「建议收藏」

    键盘记录器,可截获到 QQ 的密码「建议收藏」虽然QQ 的密码框经过了特殊的处理,但是通过一些特殊手段仍然可以得到输入过程中键盘输入的内容。代码仅供娱乐使用!

    2022年7月20日
    18
  • pycharm中如何导入库_pycharm怎么加入库

    pycharm中如何导入库_pycharm怎么加入库两种方法:1.搜索添加列表中是已经存在的库,若需要添加库,点击+搜索待库安装完成,即可使用2.利用终端命令输入代码,回车,即可完成(numpy库为例,我的是已经存在了)

    2022年8月25日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号