当前位置: 首页 > news >正文

python求矩阵的最大特征值及对应的特征向量

直接看下面的代码就行啦!

import numpy as np

#输入矩阵
A = np.array([[1, 1/2, 4, 3, 3],
              [2, 1, 7, 5, 5],
              [1/4, 1/7, 1, 1/2, 1/3],
              [1/3, 1/5, 2, 1, 1],
              [1/3, 1/5, 3, 1, 1]])

#求解特征值即特征向量
lamda = np.linalg.eig(A)

for i in range(len(lamda[0])):
    print('特征值:{0}\n对应的特征向量:\n{1}\n'.format(lamda[0][i], np.transpose([lamda[1][:,i]])))

index = np.argmax(lamda[0])
lamda_max = np.real(lamda[0][index])
vector = lamda[1][:,index]

vector_final = np.transpose((np.real(vector)))

print('最大特征值为:{0}\n对应的特征向量:\n{1}'.format(lamda_max, vector_final))

输出如下:

特征值:(5.072084408570216+0j)
对应的特征向量:
[[-0.46582183+0.j]
 [-0.84086331+0.j]
 [-0.09509743+0.j]
 [-0.17329948+0.j]
 [-0.19204866+0.j]]

特征值:(-0.03070462349371196+0.6008274290268424j)
对应的特征向量:
[[ 0.44186009+0.27105866j]
 [ 0.77734237+0.j        ]
 [-0.02000217-0.15570733j]
 [-0.02610008+0.07828144j]
 [-0.28288299+0.12469508j]]

特征值:(-0.03070462349371196-0.6008274290268424j)
对应的特征向量:
[[ 0.44186009-0.27105866j]
 [ 0.77734237-0.j        ]
 [-0.02000217+0.15570733j]
 [-0.02610008-0.07828144j]
 [-0.28288299-0.12469508j]]

特征值:(-0.005337580791396011+0.05475205961539484j)
对应的特征向量:
[[-0.36716196+0.2414553j ]
 [ 0.85752776+0.j        ]
 [-0.0190312 +0.00635723j]
 [-0.07374757-0.21459801j]
 [ 0.07483506+0.11850604j]]

特征值:(-0.005337580791396011-0.05475205961539484j)
对应的特征向量:
[[-0.36716196-0.2414553j ]
 [ 0.85752776-0.j        ]
 [-0.0190312 -0.00635723j]
 [-0.07374757+0.21459801j]
 [ 0.07483506-0.11850604j]]

最大特征值为:5.072084408570216
对应的特征向量:
[-0.46582183 -0.84086331 -0.09509743 -0.17329948 -0.19204866]

进程已结束,退出代码为 0

给个一键三连呗,至少点个赞再走吧!

相关文章:

  • 俺可爱的小马,差点被淹了
  • attention_mask的用处
  • 图解TCP/IP、图解HTTP
  • 内容页响应母版页控件的事件
  • AIX配置tomcat https的问题解决
  • 如何做个好员工?(转载)
  • 如何将数据导入到 SQL Server Compact Edition 数据库中(续)
  • Nginx学习资料汇总
  • struts2中interceptor命名的新变化
  • Java8 之 Stream API
  • struts2的客户端验证
  • 常用Java工具包
  • 嵌套母版页中的控件访问
  • 晨猫搜集的 技术博客
  • 汇编中一个有趣的问题
  • 《剑指offer》分解让复杂问题更简单
  • 「译」Node.js Streams 基础
  • angular2 简述
  • Centos6.8 使用rpm安装mysql5.7
  • docker python 配置
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • Java 最常见的 200+ 面试题:面试必备
  • JavaScript 基础知识 - 入门篇(一)
  • java第三方包学习之lombok
  • Linux Process Manage
  • Mac转Windows的拯救指南
  • python 学习笔记 - Queue Pipes,进程间通讯
  • React系列之 Redux 架构模式
  • UEditor初始化失败(实例已存在,但视图未渲染出来,单页化)
  • vue学习系列(二)vue-cli
  • XForms - 更强大的Form
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 多线程 start 和 run 方法到底有什么区别?
  • 配置 PM2 实现代码自动发布
  • 如何编写一个可升级的智能合约
  • 深入浅出webpack学习(1)--核心概念
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 我看到的前端
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 阿里云服务器如何修改远程端口?
  • 浅谈sql中的in与not in,exists与not exists的区别
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (a /b)*c的值
  • (C语言)字符分类函数
  • (第61天)多租户架构(CDB/PDB)
  • (附源码)springboot宠物管理系统 毕业设计 121654
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (十)T检验-第一部分
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (图)IntelliTrace Tools 跟踪云端程序
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (转)Android学习笔记 --- android任务栈和启动模式
  • ******之网络***——物理***