【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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Plugin “GsonFormat“ is incompatible (supported only in IntelliJ IDEA).报错

    Plugin “GsonFormat“ is incompatible (supported only in IntelliJ IDEA).报错

    idea 2021年10月2日
    71
  • JS中对象转数组案例解析

    JS中对象转数组案例解析以一次实际开发中的实例,将几种对象转数组的方法都试了一遍://consterrorList=Object.keys(error)//console.log(‘error’,error)//console.log(‘Array.from’,Array.from(error))//console.log(‘keys’,Object.keys(error))//console.log(‘values’,Object.val

    2022年9月12日
    3
  • StringTokenizer用法[通俗易懂]

    StringTokenizer用法[通俗易懂]StringTokenizer可以将一个字符串分解为一个一个的单词或者标记。常用方法如下:methodcontentintcountTokens()返回nextToken方法被调用的次数。booleanhasMoreTokens()返回是否还有分隔符。booleanhasMoreElements()返回是否还有分隔符。StringnextTo…

    2025年8月2日
    3
  • 香港坚固金业的黑幕,属于非法投资平台。

    2015年4.29晚上凌晨两点半我结束了建仓操作,当时没又发现账户资金问题,后来第二天早晨发现账户被非法操作做单,所有资金信息都被在美国时间22:08开始到22:56仅仅不到一个小时时间,所有资金都频繁建仓平仓操作,导致我账户资金全部亏损。 第二天咨询客服客服回答说是我自己认为操作要么,账户信息被泄露,被他人非法操作了。他们查询说是操作IP地址是外地操作,我感觉到很可悲,

    2022年4月4日
    62
  • 白盒测试用例设计方法有哪些_软件测试语句覆盖测试用例

    白盒测试用例设计方法有哪些_软件测试语句覆盖测试用例白盒测试设计方法编写:天林问题:白盒测试方法的概念及应用场景白盒测试方法用各种逻辑覆盖法来和设计白盒测试用例使用基本路径法来设计白盒测试用例内容:白盒测试的基本介绍白盒测试用例设计方法静态设计方法动态设计方法一、白盒测试的概念及特点1、什么是白盒测试代码逻辑的测试白盒测试,又称结构测试、逻辑驱动测试或基于程序代码内部构成的测试。此时,测试工程师需深入考察程序代码的内部结构、逻辑设计等。对于白盒测试工程师来说,软件产品内部构成是透明的。下列代码是

    2022年10月12日
    2
  • JsonPath用法详解

    JsonPath用法详解JSONPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括Javascript、Python、PHP和Java。JSONPath的安装方法如下:pipinstalljsonpathJSONPath语法和XPATH语法对比JSON结构清晰,可读性高,复杂度低,非常容易匹配。JSONPath的语法与Xpath类似,如下表所示为JSONPath与XPath语法对比。下面使用一个JSON文档演示JSONPath的具体使用。JSON文档的内容如下:{

    2022年6月19日
    353

发表回复

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

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