Python numpy生成矩阵基础用法实例代码

 更新时间:2022年08月19日 14:45:15   作者:想要学撩妹  
矩阵是matrix类型的对象,该类继承自numpy.ndarray,任何针对ndarray的操作,对矩阵对象同样有效,下面这篇文章主要给大家介绍了关于Python numpy生成矩阵基础的相关资料,需要的朋友可以参考下

1、numpy.array() 可以把列表转换为矩阵

numpy.array(object, dtype=None, *, copy=True, order='K', subok=False, ndmin=0, like=None)

    value = [[1, 2, 3], [1, 2, 3]]
    print(value)
    x = np.array(value)
    print(x)

[[1, 2, 3], [1, 2, 3]]
[[1 2 3]
 [1 2 3]]

2、numpy.arange() 生成一个向量

可设置三个参数,第一个为开始,第二个为结束,最后一个为步长,可省略开始与步长,默认从0开始,取值范围左闭右开

numpy.arange([start, ]stop, [step, ]dtype=None, *, like=None)

中括号的意思表示这个参数可以省略

    x = np.arange(12)
    print(x)
    y = np.arange(10, 12)
    print(y)
    z = np.arange(10, 12, 2)
    print(z)

[ 0  1  2  3  4  5  6  7  8  9 10 11]
[10 11]
[10]

3、numpy.ones() 生成一个全是1的矩阵, 里面填入矩阵范围

numpy.ones(shape, dtype=None, order='C', *, like=None)

x = np.ones((3, 4))
print(x)

[[1. 1. 1. 1.]
 [1. 1. 1. 1.]
 [1. 1. 1. 1.]]

 这里提一嘴输出里有点是因为dtype属性默认为float,如果改成int就会没有,下面的函数同理

    z = np.ones((3, 4), dtype=int)
    print(z)

[[1. 1. 1. 1.]
 [1. 1. 1. 1.]
 [1. 1. 1. 1.]]

4、numpy.zeros() 生成一个全是0的矩阵, 里面填入矩阵范围

numpy.zeros(shape, dtype=float, order='C', *, like=None)

    x = np.zeros((3, 4))
    print(x)

[[0. 0. 0. 0.]
 [0. 0. 0. 0.]
 [0. 0. 0. 0.]]

5、numpy.eye()  可填入两个参数分别代表行和列,也可只填一个参数,即为方阵

numpy.eye(N, M=None, k=0, dtype=<class 'float'>, order='C', *, like=None)

    x = np.eye(3)
    print(x)
    y = np.eye(3, 4)
    print(y)

[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
[[1. 0. 0. 0.]
 [0. 1. 0. 0.]
 [0. 0. 1. 0.]]

6、numpy.empty() 返回一个没有经过初始化的一个矩阵

numpy.empty(shape, dtype=float, order='C', *, like=None)

    x = np.empty((3, 4))
    print(x)

[[6.23042070e-307 2.22523004e-307 1.24610994e-306 1.60219035e-306]
 [1.24611674e-306 2.22522597e-306 1.33511969e-306 1.39071021e-307]
 [1.78018403e-306 1.78018403e-306 8.34426464e-308 2.22522596e-306]]

7、numpy.linspace  返回在指定的范围内确定个数的等间距的一组数的向量

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)

可以看到默认是50个

    X = numpy.linspace(1, 10, 10)
    print(X)
    x = numpy.linspace(1, 50)
    print(x)

[ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10.]
[ 1.  2.  3.  4.  5.  6.  7.  8.  9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50.]

更多的方法以及详细内容可以移步Routines — NumPy v1.23.dev0 Manual

补充:矩阵的逆矩阵

若两个矩阵A / B满足: AB = BA = E (E为单位矩阵). 则称A与B互为逆矩阵.

单位矩阵E: 主对角线为1, 其他元素都为0.

矩阵求逆的API:

mi = m.I  
mi = np.linalg.inv(m)

矩阵求逆时, 若把方阵推广到非方阵, 则称为矩阵的广义逆矩阵.

案例: 求斐波那契数列

x      1 1   1 1   1 1   
      1 0   1 0   1 0  
----------------------------------
1 1   2 1   3 2   5 3
1 0   1 1   2 1   3 2  ...

m = np.mat('1 1; 1 0')
for i in range(1, 30):
    print((m**i)[0,1], end=' ')
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 
17711 28657 46368 75025 121393 196418 317811 514229

总结

到此这篇关于Python numpy生成矩阵基础用法的文章就介绍到这了,更多相关Python numpy生成矩阵内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于python实现计算两组数据P值

    基于python实现计算两组数据P值

    这篇文章主要介绍了基于python实现计算两组数据P值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • pytorch fine-tune 预训练的模型操作

    pytorch fine-tune 预训练的模型操作

    这篇文章主要介绍了pytorch fine-tune 预训练的模型操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • pytorch如何实现多个矩阵拼接

    pytorch如何实现多个矩阵拼接

    这篇文章主要介绍了pytorch如何实现多个矩阵拼接问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • python嵌套异常的两种处理器

    python嵌套异常的两种处理器

    在Python中,异常也可以嵌套,本文主要介绍了python嵌套异常的两种处理器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-01-01
  • Python小知识之几种推导式用法示例

    Python小知识之几种推导式用法示例

    Python推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体,下面这篇文章主要给大家介绍了关于Python小知识之几种推导式用法的相关资料,需要的朋友可以参考下
    2023-01-01
  • 使用sklearn之LabelEncoder将Label标准化的方法

    使用sklearn之LabelEncoder将Label标准化的方法

    今天小编就为大家分享一篇使用sklearn之LabelEncoder将Label标准化的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python实现宿舍管理系统

    python实现宿舍管理系统

    这篇文章主要为大家详细介绍了python实现宿舍管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • pandas实现选取特定索引的行

    pandas实现选取特定索引的行

    下面小编就为大家分享一篇pandas实现选取特定索引的行,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 详解Python 函数如何重载?

    详解Python 函数如何重载?

    这篇文章主要介绍了Python函数重载,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • python编译安装参数方式

    python编译安装参数方式

    这篇文章主要介绍了python编译安装参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06

最新评论