本文目录一览:
- 1、python怎样生成一个随机矩阵
- 2、如何使用python表示矩阵
- 3、python如何产生随机矩阵?
- 4、python如何创建一个矩阵,里边可以存储string类型的数据?
- 5、python怎么将数组转换为矩阵?
- 6、用python的numpy创建一个矩阵
python怎样生成一个随机矩阵
import random #导入随机数模块
m=10
n=10
matrix = [[0 for i in range(m)] for i in range(n)] #定义数组
for row in range(0,m):
for col in range(0,n):
matrix[row].append(random.randint(0,101)) #赋值
for row in range(0,m):
print matrix[row]#打印
结果
如何使用python表示矩阵
使用python表示矩阵的方法:
使用“import numpy”语句导入numpy包。用numpy包的array函数创建一个二维数组,这个二维数组就表示矩阵
示例代码如下:
执行结果如下:
python如何产生随机矩阵?
numpy.random包可以实现这一功能。numpy包是python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比python自身的嵌套列表结构要高效的多,同时该结构也可以用来表示矩阵。
from
numpy
import
random
randarray
=
random.random(size=(2,4))
random函数接收需要生成随机矩阵的形状的元组作为唯一参数。上面的代码将会返回一个两行四列的随机矩阵,随机数的值位于0到1之间,矩阵是numpy.array类型。除了random函数外,还有生成整数随机矩阵的函数randint等等。
python如何创建一个矩阵,里边可以存储string类型的数据?
直接使用pandas扩展库,它本来就是以矩阵的形式存储数据(DataFrame)
python怎么将数组转换为矩阵?
python将数组转换为矩阵,方法如下:
数组转换矩阵:
A = mat(s[])
Python的定义:
Python是一种面向对象、直译式计算机程序设计语言,Python语法简捷而清晰,具有丰富和强大的类库。
它常被为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写。比如3D游戏中的图形渲染模块,速度要求非常高,就可以用C++重写。
用python的numpy创建一个矩阵
使用numpy创建矩阵有2种方法,一种是使用numpy库的matrix直接创建,另一种则是使用array来创建。首先加载numpy库,然后分别用上面说的2种方法来分别构建一个4×3的矩阵,如图
2
矩阵创建好了,大家看到了2个矩阵长得差不多,是否相等呢?我们用==(python中用==表示等于)来试试看看,如下图
3
我们下面看看2个矩阵相乘的结果,可以看到使用matrix创建的矩阵m1乘以自身,结果报错了:因为矩阵相乘需要满足一定的条件[1];而使用array创建的矩阵m2乘以自身,结果并没有报错,因为这里用的是Hadamard乘法[2];而m1×m2也报错了,说明只要有一个是matrix,就不能用Hadamard乘法,如图所示
4
下面看几个特殊矩阵[3]:使用np.zeros可以生成零矩阵,使用np.ones可以生成1矩阵,使用np.identity可以生成单位矩阵,使用np.diag可以生成对角矩阵,如图所示
5
最后看看矩阵的行向量和列向量提取方法。例如m1[[0,3]]表示提取矩阵m1的第0行和第3行[4],当然也可以用m1[[True,False,False,True]]来达到同样的效果,True就是表示对应的行要提取;而m1[:,[-2,-1]]则是提取矩阵的最后2列的列向量,m1[:,[False,True,True]]的一样可以提取最后2列的列向量,如图所示
END
注意事项
[1]在高等数学或者线性代数等已经学过了当后面的矩阵的行数等于前面矩阵的列数时,2个矩阵才可以相乘
[2]Hadamard指的是2个m×n的矩阵相乘,结果仍然是m×n的矩阵,结果为对应元素的乘积
[3]单位矩阵是特殊的对角矩阵,零(1)矩阵是指元素全部是0(1)的矩阵
[4]矩阵的第一行是从0开始编号的,python中的各种编号基本上都是从0开始的