[4.Python科学计算与数据处理.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[4.Python科学计算与数据处理

numpy.linalg模块 在numpy.linalg模块中的svd函数可以对矩阵进行奇异值分解。该函数返回3个矩阵——U、Sigma和V,其中U和V是正交矩阵,Sigma包含输入矩阵的奇异值。 * import numpy as np A = np.mat(4 11 14;8 7 -2) print A\n, A U, Sigma, V = np.linalg.svd(A, full_matrices=False) print U print U print Sigma print Sigma print V print V print Product\n, U * np.diag(Sigma) * V Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. numpy.linalg模块 广义逆矩阵 摩尔·彭罗斯广义逆矩阵(Moore-Penrose pseudoinverse)可以使用numpy.linalg模块中的pinv函数进行求解。计算广义逆矩阵需要用到奇异值分解。inv函数只接受方阵作为输入矩阵,而pinv函数则没有这个限制。 * import numpy as np A = np.mat(4 11 14;8 7 -2) print A\n, A pseudoinv = np.linalg.pinv(A) print Pseudo inverse\n, pseudoinv print Check, A * pseudoinv Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. numpy.linalg模块 行列式 numpy.linalg模块中的det函数可以计算矩阵的行列式。 * import numpy as np A = np.mat(3 4;5 6) print A\n, A print Determinant, np.linalg.det(A) Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. numpy.linalg模块 矩阵的秩 * import numpy as np I = np.eye(3)#先创建一个单位阵 I array([[ 1., 0., 0.], [ 0., 1., 0.], [ 0., 0., 1.]]) np.linalg.matrix_rank(I)#秩 3 I[1, 1] = 0#将该元素置为0 I array([[ 1., 0., 0.], [ 0., 0., 0.], [ 0., 0., 1.]]) np.linalg.matrix_rank(I)#此时秩变成2 2 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011 Aspose Pty Ltd. Nmpy线性代数小结 1.建立矩阵 * a1=np.array([1,2,3],dtype=int)???#建立一个一维数组,数据类型是int。也可以不指定数据类型,使用默认。几乎所有的数组建立函数都可以指定数据类型,即dtype的取值。 a2=np.array([[1,2,3],[2,3,4]])???#建立一个二维数组。此处和MATLAB的二维数组(矩阵)的建立有很大差别。 同样,numpy中也有很多内置的特殊矩阵: b1=np.zeros((2,3))????#生成一个2行3列的全0矩阵。注意,参数是一个tuple:(2,3),所以有两个括号。完整的形式为:zeros(shape,dtype=)。相同的结构,有ones()建立全1矩阵。empty()建立一个空矩阵,使用内存中的随机值来填充这个矩阵。 b2=identity(n)???#建立n*n的单位阵,这只能是一个方阵。 Evaluation only. Created with Aspose.Slides for .NET 3.5 Client Profile . Copyright 2004-2011

文档评论(0)

wendan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档