NumPy包中的内置diag函数很有意思。

假设创建一个1维数组a,和一个3*3数组b

import numpy as np
a = np.arange(1, 4)
b = np.arange(1, 10).reshape(3, 3)

结果如下:

>>> a
array([1, 2, 3])
>>> b
array([[1, 2, 3],[4, 5, 6],[7, 8, 9]])

使用diag函数,看一看结果:

>>> np.diag(a)
array([[1, 0, 0],[0, 2, 0],[0, 0, 3]])
>>> np.diag(b)
array([1, 5, 9])

可以发现,当 np.diag(array) 

array是一个1维数组时,结果形成一个以一维数组为对角线元素的矩阵

array是一个二维矩阵时,结果输出矩阵的对角线元素

Python NumPy中的diag函数相关推荐

  1. Python+NumPy中的diag函数(简易理解)

    np.diag(array) 中 array是一个1维数组时,结果形成一个以一维数组为对角线元素的矩阵 array是一个二维数组时,结果输出数组的对角线元素 举例: >>> a ar ...

  2. python numpy中ndarray.reshape函数参数-1是什么意思?(模糊控制、自动推理)

    模糊控制,不知道要转换后-1的位置有多少个,反正其他的就按照指定的来 示例代码: import numpy as npc=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[1 ...

  3. python使用numpy中的flatten函数将2D numpy数组拉平为1Dnumpy数组、使用np.linalg.matrix_rank函数计算2D numpy数组的秩(rank)

    python使用numpy中的flatten函数将2D numpy数组拉平为1Dnumpy数组.使用np.linalg.matrix_rank函数计算2D numpy数组的秩(rank) 目录

  4. Python使用numpy中的hstack函数水平堆叠(horizontally stack)数组实战

    Python使用numpy中的hstack函数水平堆叠(horizontally stack)数组实战 目录 Python使用numpy中的hstack函数水平堆叠(horizontally stac ...

  5. python中tile的用法_Python:numpy中的tile函数

    在学习机器学习实教程时,实现KNN算法的代码中用到了numpy的tile函数,因此对该函数进行了一番学习: tile函数位于python模块 numpy.lib.shape_base中,他的功能是重复 ...

  6. python grid函数_详解numpy中的meshgrid函数用法

    numpy中的meshgrid函数的使用 numpy官方文档meshgrid函数帮助文档https://docs.scipy.org/doc/numpy/reference/generated/num ...

  7. python求向量函数的雅可比矩阵_在python Numpy中求向量和矩阵的范数实例

    np.linalg.norm(求范数):linalg=linear(线性)+algebra(代数),norm则表示范数. 函数参数 x_norm=np.linalg.norm(x, ord=None, ...

  8. python二维元素向量_详解python Numpy中求向量和矩阵的范数

    在python Numpy中求向量和矩阵的范数实例 np.linalg.norm(求范数):linalg=linear(线性)+algebra(代数),norm则表示范数. 函数参数 x_norm=n ...

  9. Numpy中使用astype函数将字符串格式数据转换为数值数据类型

    Numpy中使用astype函数将字符串格式数据转换为数值数据类型 目录 Numpy中使用astype函数将字符串格式数据转换为数值数据类型 numpy是什么?numpy和list有哪些区别? Num ...

最新文章

  1. Xcode 代码块添加
  2. pytorch计算模型参数量
  3. 使用奇异值谱分析鉴定振荡成份
  4. 安装 | MatlabR2019b: License Manager Error -8. License checkout failed.
  5. 面向睡眠阶段分类的自适应时空图卷积神经网络
  6. 极光推送maven与代码,无需修改,粘贴即用
  7. diy感应usb摄像头拍照_DIY无线感应充电器
  8. EntLib.com Forum / YAF 开源论坛--源码的目录结构(对分析代码很有帮助)
  9. 招银网络笔试java_最新!!招银网络科技Java面经,整理附答案
  10. 补码(为什么按位取反再加一):告诉你一个其实很简单的问题(转自醍醐灌顶)...
  11. 解决 【git checkout -b dev origin/dev】报错的问题
  12. 怎么自学python-你是如何自学 Python 的?
  13. java学习笔记-设计模式22(访问者模式)
  14. 《统计学》第八版贾俊平第十三章时间序列分析和预测知识点总结及课后习题答案
  15. 一个程序员的失恋故事
  16. JS实现经纬度坐标转成XY坐标
  17. JavaScript获取地理位置
  18. 各种音视频编解码学习详解 h264 ,mpeg4 ,aac 等所有音视频格式
  19. 万由u-nas系统用上Let’s Encrypt 免费Https安全证书
  20. SCI/EI/ISTP论文收录索引号的查询方法

热门文章

  1. 用uni-app开发的微信小程序轮播图----和用微信小程序原生开发的轮播图
  2. LeetCode报错:Line 923: Char 9: runtime error: reference binding to null pointer of type ‘std::__cxx11:
  3. 接入Google fit指南
  4. 程序员的算法趣题Q57: 最快的联络网
  5. JAVA订餐系统的心得体会
  6. Python.习题五 列表与元组(下)
  7. 帝国cms7.5漏洞复现
  8. R语言ggplot2可视化:使用patchwork包将多个ggplot2可视化结果组合起来、使用plot_spacer函数在组合结果图像中的指定位置加入空白区域(不包含任何内容,纯粹空白图)
  9. 非常实用的cmd命令
  10. 输入一行字符,分别统计出其数字、大写字母、小写字母和其他字符的个数。