文章目录

  • 一、矩阵相关操作
  • 二、ufunc统一泛化函数

一、矩阵相关操作

1、三种构造矩阵的方法

  • np.matrix(二维容器, copy=True)
    一参为可被解释为矩阵的二维容器,比如二维数组、二维列表;
    二参为copy,表示是否将原容器的数据复制一份,若为True则不会影响原容器,若为false则会影响原容器数据
  • numpy.mat(可被解释的二维容器)——>这种方法则一定是将数据与元容器共享
  • numpy.bmat(‘A B; C D’) ——>块级拼接,这种方法是将多个小的矩阵合成一个大的矩阵

2、常用属性

  • T属性:转置运算
  • I属性:广义逆矩阵,非方阵也可以算出逆矩阵(两个互逆矩阵相乘等于单位矩阵,类似1;即为A*B=E)
  • 两矩阵相乘(举例二维矩阵):
    第一行乘第一列之和,第一行乘第二列之和
    第二行乘第一列之和,第二行乘第二列之和

3、练习代码

import numpy as np# 二维数组作为二维容器
a = np.array([[1, 2],[3, 4]
])# 将二维容器转换为矩阵
b = np.matrix(a)
c = np.mat(a)
# 改变容器数据
a *= 10# 一个会变(mat)一个不会变(matrix),若为二维列表则都会变(会自动复制一份)
# 当然若设置matrix的copy也可以变:b = np.matrix(a, copy=False)
print(b, type(b))
print("-----------------------------")
print(c, type(c))# 直接创建矩阵
d = np.mat('11 22; 33 44')
e = np.mat('55 66; 77 88')
print("-----------------------------")
print(d, type(d))# 块级拼接
f = np.bmat('d e')  # 竖直拼接:f = np.bmat('d;e')
print("-----------------------------")
print(f, type(f))# 逆矩阵和矩阵相乘
print("-----------------------------")
print(c.I)
print(c * d)

二、ufunc统一泛化函数

1、ufunc对象
统一泛化函数,与vectorize类似,只是frompyfunc会在数据后面跟上类型

2、格式
numpy.frompyfunc(标量函数, 函数个数, 返回值个数)
返回一个ufunc泛化函数对象,矢量返回值

3、ufunc对象的方法(需要加一个add)

  • numpy.add.reduce():累加数组元素
  • numpy.add.accumulate():元素累加过程
  • numpy.add.reduceat():分段累加(在指定位置累加)
  • numpy.add.outer():求外和,分别给每一个元素加上给定列表中的数据
    区分:numpy.outer()是求外积,给每一个元素乘上给定列表中的数据

4、练习代码

import numpy as np# def func(a, b):
#     return a+b, a-b, a*b
# A = np.array([10, 20, 30])
# B = np.array([100, 200, 300])
#
# C = np.vectorize(func)(A, B)
# print(C)
# D = np.frompyfunc(func, 2, 3)(A, B)  # 2说明有两个参数,3说明有三个返回值
# print(D)'''
ufunc函数对象的方法
'''
a = np.arange(1, 7)
print(a)
b = np.add.reduce(a)
print(b)
c = np.add.accumulate(a)
print(c)print("-----------------------------------")
d = np.add.reduceat(a, [0, 2, 4])  # 在0,2,4位置做累加,即0后2前做一段累加,2后4前做一段累加,4后做一段累加
print(d)
e = np.add.outer([10, 20, 30], a)  # 求外和,分别给每一个元素加上10,20,30,组成新的数组
print(e)
f = np.outer([10, 20, 30], a)
print(f)

Python之数据分析(Numpy的矩阵相关操作、ufunc泛化函数对象)相关推荐

  1. python输入数组并计算_利用Python进行数据分析——Numpy基础:数组和矢量计算

    利用Python进行数据分析--Numpy基础:数组和矢量计算 ndarry,一个具有矢量运算和复杂广播能力快速节省空间的多维数组 对整组数据进行快速运算的标准数学函数,无需for-loop 用于读写 ...

  2. 矩阵相关操作和矩阵快速幂

    矩阵相关操作和矩阵快速幂 矩阵基本运算以及快速幂模板 POJ - 3070. Fibonacci Hdu - 1757A. Simple Math Problem Codeforces - 185A. ...

  3. Python列表(list)的相关操作及方法

    Python列表(list)的相关操作及方法 一.list列表 1.概述: 本质:list列表的本质是一种有序的集合 2.创建列表 语法: 列表名 = [元素1,元素2,元素3-] 说明:列表中的选项 ...

  4. 【Python】数据分析.numpy.矩阵乘法运算

    Python.numpy.矩阵乘法运算 声明:本文章转载于矩阵的乘法运算及Python实现 在讲矩阵相乘之前,我们先看一个生活中的例子. 假如猪肉.牛肉.鸡蛋的价格在一周内不发生变化,记录近三周内的价 ...

  5. Python 3.8+numpy查找矩阵中所有鞍点

    图书推荐: <Python数据分析.挖掘与可视化>(慕课版)(ISBN:978-7-115-52361-7),董付国,人民邮电出版社,定价49.8元,京东.当当.天猫均有销售. 图书封面: ...

  6. 利用 Numpy 进行矩阵相关运算

    正文共:3266 字 31 图 预计阅读时间: 9 分钟 本文目录: 1. 前言 1.1 基本介绍 1.2 运行环境 2. 函数清单 3. 案例讲解 3.1 Numpy.linalg 3.2 Nump ...

  7. Python之数据加密与解密及相关操作(hashlib、hmac、random、base64、pycrypto)

    本文内容 数据加密概述 Python中实现数据加密的模块简介 hashlib与hmac模块介绍 random与secrets模块介绍 base64模块介绍 pycrypto模块介绍 总结 参考文档 提 ...

  8. python基础===【字符串】所有相关操作

    #字符串的相关操作#基本操作 #+ 字符串连接操作 str1 = '来是come走是go' str2 = '点头yes摇头no' result = str1 + str2 print(result)# ...

  9. php语法------04 php内置函数之与页面表单请求相关的内置函数对象

    2019独角兽企业重金招聘Python工程师标准>>> $_SERVER:服务器相关的信息 $_REQUEST:请求相关的信息(表单数据,不管是GET方式提交还是POST方式提交) ...

最新文章

  1. 箱线图怎么判断异常值_箱形图(Box-plot)识别异常值,是否有数据依据?还是经验法则?...
  2. CVPR 2019 论文和开源项目合集(Papers with Code)
  3. MIT JOS学习笔记01:环境配置、Boot Loader(2016.10.22)
  4. Music List
  5. php支持二级域名共享,PHP二级域名session共享方案
  6. 三星电子预计第三季度营业利润达722亿元 同比增长58%
  7. CSS3(七) 前端预处理技术(Less、Sass、CoffeeScript)
  8. 程序员版的《后来的我们》,结局竟是……
  9. dpkg:处理软件包 xxx (--configure)时出错
  10. win系统服务器怎么清理内存,windows服务器内存清理
  11. emoji粉色爱心符号_新的emoji又来袭!你们知道这些表情符号的真正含义吗?
  12. Scene Graph Generation by Iterative Message Passing解读
  13. CTGU 2021春-MySQL数据库实验2:基本查询5-6关,共5小题全代码+信息表+通关截图!
  14. android窗帘拉开动画,H5+CSS3窗帘拉开收起动画特效源码
  15. 利用JS来实现表格的全选、全不选、反选以及删除的功能
  16. 关于魔兽世界插件AddOns
  17. 【开源教程13】疯壳·开源编队无人机-SPI(六轴传感器数据获取)
  18. Quartus-II的安装教程
  19. BI PUBLISHER RTF模板制作PIVOT表和重分组
  20. 服务器在机柜中的安装位置,服务器上机柜的安装方法

热门文章

  1. 农产品加工进销存单_果蔬行业,用营销版在线进销存3秒开单收款!
  2. Refused to load the image
  3. WPF中嵌套charts图表查询数据
  4. android 拒绝服务漏洞,Android 应用本地拒绝服务漏洞浅析
  5. FTP测试手机软件画画教程图片,手机绘画SketchBook原创教程
  6. 魔兽美服服务器维护,美服《魔兽世界》低人口密度服务器合并计划最新动态
  7. 显卡花屏显存测试软件6,显卡花屏诊断好帮手:Video Memory Stress Test
  8. java httpurlconnection 开链接后跳转_HttpURLConnection长连接详解
  9. Apache POI学习笔记
  10. CKEditor安装