IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 【numpy】实现线代之矩阵 -> 正文阅读

[Python知识库]【numpy】实现线代之矩阵

【numpy】实现线代之矩阵

算法包下载链接:https://download.csdn.net/download/qq_42629529/79481514

import numpy as np
from numpy.linalg import eig
from scipy.linalg import svd



if __name__ == "__main__":

    # 矩阵的创建
    A = np.array([[1, 2], [3, 4]])
    print(A)

    # 矩阵的属性
    print(A.shape)#行列,形状
    print(A.T)#转置

    # 获取矩阵的元素
    print(A[1, 1])#2行2列
    print(A[0])#第1行
    print(A[:, 0])#从头到尾列索引为0
    print(A[1, :])#从头到尾行索引为1

    # 矩阵的基本运算
    B = np.array([[5, 6], [7, 8]])
    print(A + B)#加
    print(A - B)#减
    print(10 * A)#数乘
    print(A * 10)#乘数
    print(A * B)#对应元素乘法,须同型矩阵
    print(A.dot(B))#乘法

    p = np.array([10, 100])
    print(A + p)#矩阵每行与向量相加
    print(A + 1)#矩阵每个元素+1,广播(慎用)

    print(A.dot(p))#矩阵与向量的乘法

    # 单位矩阵
    I = np.identity(2)#2行2列单位矩阵
    print(I)
    print(A.dot(I))#A乘单位矩阵
    print(I.dot(A))#单位矩阵乘A

    # 逆矩阵,使用linalg子模块
    invA = np.linalg.inv(A)#A的逆矩阵
    print(invA)
    print(invA.dot(A))#A的逆矩阵乘A
    print(A.dot(invA))#A乘A的逆矩阵
    #非方阵
    # C = np.array([[1, 2, 3], [4, 5, 6]])
    # np.linalg.inv(C)#非方阵没有逆矩阵,报错
    
    A1 = np.array([[4, -2],
                   [1, 1]]);
    eigenvalues1, eigenvectors1 = eig(A1);
    print(eigenvalues1)
    print(eigenvectors1)
    print()

    # 关于y=x翻转
    A2 = np.array([[0, 1],
                   [1, 0]]);
    eigenvalues2, eigenvectors2 = eig(A2);
    print(eigenvalues2)
    print(eigenvectors2)
    print()

    # 旋转90度
    A3 = np.array([[0, -1],
                   [1, 0]]);
    eigenvalues3, eigenvectors3 = eig(A3);
    print(eigenvalues3)
    print(eigenvectors3)
    print()

    # 单位矩阵
    A4 = np.array([[1, 0],
                   [0, 1]]);
    eigenvalues4, eigenvectors4 = eig(A4);
    print(eigenvalues4)
    print(eigenvectors4)
    print()

    # 几何重数为1
    A5 = np.array([[3, 1],
                   [0, 3]]);
    eigenvalues5, eigenvectors5 = eig(A5);
    print(eigenvalues5)
    print(eigenvectors5)
    print()


    A = np.array([[1, 2],
                  [3, 4],
                  [5, 6]])
    U, s, VT = svd(A)
    print(U)
    print(s)
    print(VT)
    print()

    Sigma = np.zeros(A.shape)
    for i in range(len(s)):
        Sigma[i][i] = s[i]
    print(Sigma)
    print(U.dot(Sigma).dot(VT))


  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-02-07 13:41:15  更:2022-02-07 13:42:54 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:58:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码