【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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • linux下如何启动ice服务器,linux: ICE搭建

    linux下如何启动ice服务器,linux: ICE搭建环境:JDK1.8yuminstallgccgcc-c++glibc-headers-yyumgroupinstall”DevelopmentTools”-yyumupdate-ymkdir/usr/local/ice/bzip2-pvtarxfThirdParty-Sources-3.5.1.tar.gzcdThirdParty-Sources-3.5.1&a…

  • 程序员要不要去外包外派公司上班_程序员去外包是不是就废了

    程序员要不要去外包外派公司上班_程序员去外包是不是就废了总结一下外包外派公司的特点,要不要去,你自然就知道了。1.不管是外包还是外派,你的工作地点都不会固定的。都会去甲方的公司去工作,这个项目完事了,你就换到另一个甲方,另一个工作地方了。需要出差,需要驻场等等,工作场所非常不固定。2.面试的时候各种承诺,转正的时候,各种克扣。3.五险一金不会给你按照基本工资交,而是按照最低工资标准交。4.技术方面,可能会让你弄很多你不熟悉的技…

  • Qt多线程:使用互斥锁

    1、官方文档:QMutex类提供线程间的访问序列化。QMutex的目的是保护一个对象、数据结构或代码片段,这样每次只有一个线程可以访问它(这类似于Javasynchronized关键字)。通常最好将互斥对象与QMutexLocker一起使用,因为这样可以很容易地确保一致地执行锁定和解锁。2、官方示例:QMutexmutex;intnumber=6;v…

  • 大数运算算法汇总_小学减法的运算公式

    大数运算算法汇总_小学减法的运算公式大数加法:#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<vector>#include<string>#include<cmath>#include<stdexce…

  • Linux 下如何进入 MySQL 命令行

    Linux 下如何进入 MySQL 命令行格式:mysql-h主机地址-u用户名-p用户密码1、例1:连接到本机上的MYSQL一般可以直接键入命令mysql-uroot-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>2、连接到远程主机上的MySQL假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命

  • IP池设计思考(面试点)[通俗易懂]

    IP池设计思考(面试点)面试中IP代理池的几个问题:IP怎么剔除的通过设置失败次数,超过失败次数就会删除,可以自定义失败次数.免费代理多久抓取一次10min抓取一次,代码实现可在ProxyRefreshSchedule.py中查看。每过10min就去目标网站抓取一次。有些网站不更新,当然如果是自己买的IP代理不用考虑代理不会更新的情况,因为买的IP数量应该是足够的。怎…

发表回复

您的电子邮箱地址不会被公开。

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