科学计算库Numpy-矩阵操作

简介: 科学计算库Numpy-矩阵操作

假定所有操作都事先导入numpy库


import numpy as np


1、构造矩阵


①构造一个零阵


np.zeros((3,4))
#构造的零阵其中的值默认为folat类型


结果为:


array([[ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.]])


②构造一个初始化为1的三维矩阵,其中的值为int类型


np.ones((2,3,4), dtype=np.int32)


结果为:


array([[[1, 1, 1, 1],
        [1, 1, 1, 1],
        [1, 1, 1, 1]],
       [[1, 1, 1, 1],
        [1, 1, 1, 1],
        [1, 1, 1, 1]]])


③构造一个矩阵,起始值为10,终止值小于30,每隔5个值创建一个矩阵元素


np.arange(10, 30, 5)


结果为:array([10, 15, 20, 25])


④构造一个矩阵,起始值为0,终止值小于2,每隔0.3创建一个矩阵元素


np.arange(0, 2, 0.3)


结果为:array([ 0. , 0.3, 0.6, 0.9, 1.2, 1.5, 1.8])


⑤构造一个随机初始化的矩阵(每个元素的值介于-1到+1之间)


np.random.random((3,4))


结果为:


array([[ 0.63569183,  0.47289918,  0.51768133,  0.79131544],
       [ 0.87953741,  0.47233199,  0.76741983,  0.3156414 ],
       [ 0.93806506,  0.11797016,  0.90171483,  0.52385309]])


⑥构造一个有100个元素的矩阵,起始值是0,终止值为2π


from numpy import pi
np.linspace(0, 2*pi, 100)


结果为:


array([ 0.        ,  0.06346652,  0.12693304,  0.19039955,  0.25386607,
        0.31733259,  0.38079911,  0.44426563,  0.50773215,  0.57119866,
        0.63466518,  0.6981317 ,  0.76159822,  0.82506474,  0.88853126,
        0.95199777,  1.01546429,  1.07893081,  1.14239733,  1.20586385,
        1.26933037,  1.33279688,  1.3962634 ,  1.45972992,  1.52319644,
        1.58666296,  1.65012947,  1.71359599,  1.77706251,  1.84052903,
        1.90399555,  1.96746207,  2.03092858,  2.0943951 ,  2.15786162,
        2.22132814,  2.28479466,  2.34826118,  2.41172769,  2.47519421,
        2.53866073,  2.60212725,  2.66559377,  2.72906028,  2.7925268 ,
        2.85599332,  2.91945984,  2.98292636,  3.04639288,  3.10985939,
        3.17332591,  3.23679243,  3.30025895,  3.36372547,  3.42719199,
        3.4906585 ,  3.55412502,  3.61759154,  3.68105806,  3.74452458,
        3.8079911 ,  3.87145761,  3.93492413,  3.99839065,  4.06185717,
        4.12532369,  4.1887902 ,  4.25225672,  4.31572324,  4.37918976,
        4.44265628,  4.5061228 ,  4.56958931,  4.63305583,  4.69652235,
        4.75998887,  4.82345539,  4.88692191,  4.95038842,  5.01385494,
        5.07732146,  5.14078798,  5.2042545 ,  5.26772102,  5.33118753,
        5.39465405,  5.45812057,  5.52158709,  5.58505361,  5.64852012,
        5.71198664,  5.77545316,  5.83891968,  5.9023862 ,  5.96585272,
        6.02931923,  6.09278575,  6.15625227,  6.21971879,  6.28318531])


2、numpy的运算


①numpy的加减运算


a = np.array([20, 30, 40, 50])
b = np.arange(4)
print(a)
print(b)
c = a + b
d = a - b
print(c)
print(d)
#结论:对应位置的元素相加减


结果为:


[20 30 40 50]
[0 1 2 3]
[20 31 42 53]
[20 29 38 47]


②numpy的乘除运算


b = np.arange(4)
print(b ** 2)
#推广结论:进行乘除时对每个元素执行相同的运算


结果为:[0 1 4 9]


③比较


a = np.array([20, 30, 40, 50])
print(a<35)
#结论:每个元素都进行比较


结果为:[ True True False False]


3、矩阵的运算


A = np.array([[1, 1],
              [0, 1]])
B = np.array([[2, 0],
              [3, 4]])
print(A)
print('--------')
print(B)
print('--------')
#求内积
print(A * B)
#对应位置元素相乘
print('--------')
#矩阵乘法
print(A.dot(B))
#等同于print(np.dot(A, B))
print('--------')


结果为:


[[1 1]
 [0 1]]
--------
[[2 0]
 [3 4]]
--------
[[2 0]
 [0 4]]
--------
[[5 4]
 [3 4]]
--------
[[5 4]
 [3 4]]


相关文章
|
8天前
|
存储 机器学习/深度学习 数据处理
NumPy:从初识到实战,探索Python科学计算的无限可能
NumPy:从初识到实战,探索Python科学计算的无限可能
39 0
|
8天前
|
机器学习/深度学习 存储 算法
Python中的NumPy库:数值计算与科学计算的基石
【2月更文挑战第29天】NumPy是Python科学计算的核心库,专注于高效处理大型多维数组和矩阵。其核心是ndarray对象,提供快速数组操作和数学运算,支持线性代数、随机数生成等功能。NumPy广泛应用于数据处理、科学计算和机器学习,简化了矩阵运算、统计分析和算法实现,是数据科学和AI领域的重要工具。
|
2天前
|
搜索推荐 索引 Python
【科学计算包NumPy】NumPy数组的基本操作
【科学计算包NumPy】NumPy数组的基本操作
15 3
|
2天前
|
机器学习/深度学习 开发者 Python
【科学计算包NumPy】NumPy数组的创建
【科学计算包NumPy】NumPy数组的创建
15 4
|
8天前
|
Python
科学计算中的NumPy应用案例分享
【4月更文挑战第17天】本文介绍了NumPy在科学计算中的应用,包括使用NumPy的线性代数函数求解线性方程组、利用`trapz`函数进行数值积分以及结合`scipy.signal`进行信号滤波。这些案例展示了NumPy在处理实际问题时的实用性和灵活性,突显了其在Python科学计算领域的重要地位。
|
8天前
|
数据处理 C语言 索引
使用NumPy进行科学计算:基础与进阶
【4月更文挑战第9天】NumPy是数据处理和科学计算的核心工具,提供高性能的多维数组对象和数学函数库。本文深入讲解NumPy的基础和进阶技巧,包括ndarray的向量化操作、广播机制、ufunc、高级索引以及线性代数操作。通过示例展示如何利用NumPy进行高效计算,强调性能优化,帮助读者提升科学计算能力。
|
8天前
|
存储 索引 Python
请解释Python中的NumPy库以及它的主要用途。
【2月更文挑战第27天】【2月更文挑战第97篇】请解释Python中的NumPy库以及它的主要用途。
|
8天前
|
机器学习/深度学习 数据挖掘 索引
Python数据分析(一)—— Numpy快速入门
Python数据分析(一)—— Numpy快速入门
|
8天前
|
存储 索引 Python
一文掌握python数组numpy的全部用法(零基础学python(二))
一文掌握python数组numpy的全部用法(零基础学python(二))
39 0
|
3天前
|
程序员 开发工具 索引
图解Python numpy基本操作
图解Python numpy基本操作