本文中涉及了矩阵的加、减、乘、转置等操作。主要是使用矩阵类的内置属性和方法以及numpy提供的方法来进行相关的操作:
有需要的读者可以根据个人需要对照下方题目表涉及的方法进行查阅。
前置生成相关矩阵
import numpy as np
from scipy.linalg import toeplitzn = 5m = 5A = np.random.randn(n,m)print( A )#print( np.linalg.inv(A) )r = np.random.randint(10 ,size = m)c = np.random.randint(10 , size = m )
B = toeplitz(r,c)
#B = np.random.randn(m,m)print( B )

9.1

#*****Matrix operations
print( "A+A is:\n" , A+A )
print( "A*A is:\n" ,np.dot(A,A.T) )
print( "AT*A is:\n" ,np.dot(A.T, A) )
print( "A*B is:\n" ,np.dot(A,B) )def calculate( A,B,num ) :I = np.eye( m )C = B-num*Iprint('A*(B-num*I) is:\n' , np.dot(A,C) )calculate( A,B, 1)

9.2

#*****Solving a linear system
def solve( B , b ):return np.linalg.solve(B,b)b = np.random.randint(10, size = m )
print( "Solve Bx=b:\n" , solve(B,b) )

9.3

#*****Norms
print("A的fro范数:", np.linalg.norm( A , ord = 'fro' )) #fro 范数
print("B的无穷范数: ", np.linalg.norm( B , ord = np.inf ) ) #无穷范数
print("B的最大奇异值:", np.linalg.norm(B,2) )
print("B的最小奇异值:", np.linalg.norm(B,-2) )

9.4

#*****Power iteration
import time
def find_eig( Z , n ):num = 0u_k = np.ones(n)v_k_norm = 0v_k = np.zeros(0)#begin iterationbegin = time.clock()while True :v_k = np.dot(Z,u_k)v_k_norm_temp = v_k_normv_k_norm = np.linalg.norm(v_k)u_k = v_k/v_k_normnum += 1if ( abs(v_k_norm_temp - v_k_norm) < 0.0001 ):breakend = time.clock()print("the largest eigenvalue:", v_k_norm)  print("the corresponding eigenvector:", u_k)
Z = np.random.randn(n,n)
find_eig( Z , n )

9.5

#******Singular values
def singular_val( p , n ):C = np.random.binomial( 1,p,(n,n) ) #二项分布val = np.linalg.norm( C , 2 ) #the max singular valueprint ("the max singular value: " ,val )print( "n*p is :" , n*p )if ( abs(n*p-val) < 0.01 ):print( "They are equal")else :print( "They are not equal" )

9.6

#*******Nearest neighbordef nearest_neighbor(A , z ):bigger = (A[A>z]).min()less = (A[A<=z]).max()if ( abs(less-z) < abs(bigger-z) ):print( less )else :print( bigger )nearest_neighbor( A, 0 )

Exercise:学习使用Numpy相关推荐

  1. python hstack_Python学习之Numpy速成记——基础篇(中)

    上节课我们一起学习了Numpy的基本功能和它的部分基础知识.今天我们一起接着来学习剩下的部分. 5.一维数组的索引和切片 (1)一维数组的切片操作与Python列表的切片操作很相似.例如,我们可以用下 ...

  2. Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片、相互转换

    Python语言编程学习:numpy中的array格式数据切片与pandas中的dataframe格式数据切片.相互转换 目录 numpy中的array格式数据切片与pandas中的dataframe ...

  3. python中ndarray对象实例化_Python数据分析之Numpy学习 2——NumPy 基础 ndarray对象

    Python数据分析之Numpy学习 2 -- NumPy 基础学习 NumPy(Numerical Python)是高性能科学计算和数据分析的基础包.NumPy的主要对象是同构数据多维容器(homo ...

  4. Python 基础知识学习笔记——NumPy

    Python基础知识学习笔记--NumPy 与 matlab 优秀的矩阵运算类似,python 提供了 numpy 库,这对熟悉 matlab 的用户来说非常友好.向量.矩阵和多维数组是数值计算中必不 ...

  5. Python学习笔记——Numpy数组的移动滑窗,使用as_strided实现

    Python学习笔记--Numpy数组的移动滑窗,使用as_strided实现 `Numpy`中移动滑窗的实现 为何需要移动滑窗 `Numpy`中的移动滑窗 移动滑窗的`as_strided`实现方法 ...

  6. 学习笔记——Numpy基本操作(一)

    为了方便学习,我把本文介绍的一些函数先列举下 数组属性 ndarray.ndim ndarray.shape 创建数组 numpy.empty.numpy.zeros.numpy.ones初始化 数值 ...

  7. 客户端码农学习ML —— Numpy基本用法

    本文从创建矩阵.维度变换.矩阵运算.随机数.索引等方面总结numpy中基本用法,脚本首先import numpy as np. 创建矩阵 np.array([1, 2, 3])输出 [1 2 3] n ...

  8. 收藏 | 深度学习之Numpy基础入门教程!

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散   计算机视觉联盟笔记   作者:王博Kings.Sophia (Numerical Python) 是 Pytho ...

  9. 【深度学习】Numpy实现简单神经网络

    原文地址:点击访问 许久未更,是因为开学之后学习任务太充实了.每天都有做不完的事情,每件事情都又想把它做好. 我航中秋国庆假期长达8天,真应了那句话:该放的假一天不少,该补的课一次没有.期间,有多门作 ...

最新文章

  1. linux内核网络协议栈--监控和调优:发送数据(三十)
  2. python容器数据类型_python collections 容器数据类型
  3. Seafile - 最好的 Dropbox 开源替代,面向团队而设计
  4. Google Guava EventBus和Java 7 WatchService用于事件编程
  5. linux kill命令信号,Linux kill 命令详解
  6. 微软Vista今起大幅降价 最高幅度达到千元
  7. 小程序【笔记001】框架和配置文件
  8. [译]时间自动机:语义,算法和工具
  9. GeoServer注意点
  10. php yii应用运维,Windows运维之Windows下用cmd命令实例讲解yii2.0在php命令行中运行的步骤...
  11. 数据增强在贝壳找房文本分类中的应用
  12. 图片的压缩(上传图片太大的话,上传不到服务器)
  13. mysql登录密码enc_SpringBoot项目mysql配置文件密码加密(jasypt)
  14. android apk结构,APK文件结构详解
  15. 局域网文件共享服务器速度如何提升,分享提高XP访问局域网共享文件速度的方法...
  16. 什么是AWS Athena
  17. 意外收获:如何将中文转成拼音
  18. vue使用axios配置多域名
  19. python如何计算个人gpa_GPA计算Python
  20. 残差网络解决什么问题详解残差网络

热门文章

  1. 匹兹堡大学申请条件计算机科学,匹兹堡大学计算机科学排名第62(2020年TFE美国排名)...
  2. python中地图测距
  3. jquery组织结构图插件 (基于jit-yc 做可拖动、自适应伸缩的orgchart)
  4. vue注入组件时报错:did you register the component correctly? For recursive components......
  5. 如何区分显卡新旧和配置?
  6. 阿里云服务器入门教程 (图文教程)
  7. 知乎搜索排序模型的演进
  8. 【2022最新Java面试宝典】—— Java虚拟机(JVM)面试题(51道含答案)
  9. 1631 小鲨鱼在51nod小学
  10. 侯耀文两女告侯耀华争遗产