Python中矩阵创建和矩阵运算方法

yipeiwu_com6年前Python基础

矩阵创建

1、from numpyimport *;

a1=array([1,2,3])

a2=mat(a1)

矩阵与方块列表的区别如下:

2、data2=mat(ones((2,4)))

创建一个2*4的1矩阵,默认是浮点型的数据,如果需要时int类型,可以使用dtype=int

3、data5=mat(random.randint(2,8,size=(2,5))

产生一个2-8之间的随机整数矩阵

4、data3=mat(random.rand(2,2))

这里的random模块使用的是numpy中的random模块,random.rand(2,2)创建的是一个二维数组,需要将其转换成#matrix,并在数组中加入[0,1]之间均匀分布的随机样本

5、data4=mat(random.randn(2,2))numpy.random.randn()

官方文档中给出的用法是:numpy.random.rand(d0,d1,…dn) ,以给定的形状创建一个数组,数组元素来符合标准正态分布N(0,1)若要获得一般正态分布则可用sigma * np.random.randn(…) + mu进行表示

6、a1=random.random()

random.random()用于生成一个0到1的随机浮点数

7、a1=random.rand()用于生成[0,1]之间均匀分布的随机浮点数

a=random.rand(2)

array([ 0.00760085, 0.91928957])

rand()与random()区别:

int rand(void); //返回一个随机数0 ~ pow(2, sizeof(int))-1

long int random(void); //返回一个随机数0 ~ pow(2, sizeof(long int))-1

总结:rand和random的区别就是返回类型不同,int和long int(虽然在普通的32位机上效果是一样的)

使用的rand或者random之前,一般使用time(0) getpid()设置随机种子.否则默认种子就是1,则每次产生的随机数都是一样的

补充:pow()用来计算以x 为底的 y 次方值,然后将结果返回。设返回值为 ret,则 ret = xy。

numpy矩阵运算

(1) 矩阵点乘:m=multiply(A,B)

(2) 矩阵乘法:m1=a*b m2=a.dot(b)

(3) 矩阵求逆:a.I

(4) 矩阵转置:a.T

以上这篇Python中矩阵创建和矩阵运算方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python对字典进行排序实例

本文实例讲述了python对字典进行排序的方法,是非常实用的技巧。分享给大家供大家参考。 具体实现方法如下: import itertools thekeys = ['b','a'...

详谈Python基础之内置函数和递归

详谈Python基础之内置函数和递归

一、内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 it...

python实现socket端口重定向示例

python实现socket端口重定向示例

可以很轻松的在端口12345开启共享,效果如下: 要实现我想要的功能,只需要将端口重定向就行了,代码如下: 复制代码 代码如下:#! /usr/bin/python''' &n...

python 根据网易云歌曲的ID 直接下载歌曲的实例

python 根据网易云歌曲的ID 直接下载歌曲的实例

特么的,上次写了一堆,发现,原来下载网易云的歌曲根本不用这么费劲,直接用! http://music.163.com/song/media/outer/url?id=这里填歌曲i...

python 浅谈serial与stm32通信的编码问题

参考链接: decode错误处理方案 可选用的编码 使用环境: ubuntu18.04 python3.65 问题点: 使用pyserial与stm32通信,使用如下形式的编码进行wri...