使用 Python 进行科学计算,
今天看了一下 使用 Python 进行科学计算 发现写的非常不错, 而且博主强烈要求分享 跳转地址

NumPy 是一个运行速度非常快的数学库,主要用于数组计算。它可以让你在 Python 中使用向量和数学矩阵,以及许多用 C 语言实现的底层函数,你还可以体验到从未在原生 Python 上体验过的运行速度。

NumPy 是 Python 在科学计算领域取得成功的关键之一,如果你想通过 Python 学习数据科学或者机器学习,就必须学习 NumPy。我认为 NumPy 的功能很强大,而且入门也不难。

# 1D Array
a = np.array([0, 1, 2, 3, 4])
b = np.array((0, 1, 2, 3, 4))
c = np.arange(5)
d = np.linspace(0, 2*np.pi, 5)print(a) # >>>[0 1 2 3 4]
print(b) # >>>[0 1 2 3 4]
print(c) # >>>[0 1 2 3 4]
print(d) # >>>[ 0.          1.57079633  3.14159265  4.71238898  6.28318531]
print(a[3]) # >>>3

上边的代码展示了创建数组的四种不同方式。最基本的方式是传递一个序列给 NumPy 的 array() 函数;你可以传给它任意的序列,不仅仅是我们常见的列表之类的。

注意,当输出的数组中的数值长度不一样的时候,它会自动对齐。这在查看矩阵的时候很有用。数组的索引和 Python 中的列表或其他序列很像。你也可以对它们使用切片,这里我不再演示一维数组的切片,如果你想知道更多关于切片的信息,查看这篇文章。

上边数组的例子给你展示了如何在 NumPy 中表示向量,接下来我将带你们领略一下怎么表示矩阵和多维数组。

# MD Array,
a = np.array([[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]])print(a[2,4]) # >>>25

通过给 array() 函数传递一个列表的列表(或者是一个序列的序列),可以创建二维数组。如果我们想要一个三维数组,那我们就传递一个列表的列表的列表,四维数组就是列表的列表的列表的列表,以此类推。

注意二维数组是如何成行成列排布的(在我们的朋友–空格的帮助下)。如果要索引一个二维数组,只需要引用相应的行数和列数即可。

# Array properties
a = np.array([[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]])print(type(a)) # >>><class 'numpy.ndarray'>
print(a.dtype) # >>>int64
print(a.size) # >>>25
print(a.shape) # >>>(5, 5)
print(a.itemsize) # >>>8
print(a.ndim) # >>>2
print(a.nbytes) # >>>200

如你所看,在上边的代码中 NumPy 的数组其实被称为 ndarray。我不知道为什么它被称为 ndarray,如果有人知道请在下边留言!我猜测它是表示 n 维数组(n dimensional array)。

数组的形状(shape)是指它有多少行和列,上边的数组有五行五列,所以他的形状是(5,5)。

‘itemsize’ 属性是每一个条目所占的字节。这个数组的数据类型是 int64,一个 int64 的大小是 64 比特,8 比特为 1 字节,64 除以 8 就得到了它的字节数,8 字节。

‘ndim’ 属性是指数组有多少维。这个数组有二维。但是,比如说向量,只有一维。

‘nbytes’ 属性表示这个数组中所有元素占用的字节数。你应该注意,这个数值并没有把额外的空间计算进去,因此实际上这个数组占用的空间会比这个值大点。

使用 Python 进行科学计算 使用 Python 进行科学计算相关推荐

  1. python三维数据转换成二维_Python科学计算全生态工具锦集

    没关注?  伸出手指点这里 AI Python目前是与科学计算结合最好的一门编程语言,包括大数据分析.机器学习.人工智能.可视化,甚至是天文学.生物学(神经科学).量子力学等等都有强大的工具包支持 P ...

  2. python工程计算软件库_python中常用的科学计算工具包

    我们最了解的科学计算工具可能是Matlab,它能进行集数值计算,可视化工具及交互于一身,可惜的是它是一个商业产品.开源方面除了GNU Octave在尝试做一个类似Matlab的工具包外,Python的 ...

  3. 科学计算:Python VS. MATLAB (1)----给我一个理由先

    科学计算:Python VS. MATLAB (1)----给我一个理由先         MATLAB 是一种用于算法开发.数据可视化.数据分析以及数值计算的高级技术计算语言和交互式环境.使用 MA ...

  4. 科学计算:Python VS. MATLAB(3)----线性代数基础

    科学计算:Python VS. MATLAB(3)----线性代数基础 按:在介绍工具之前先对理论基础进行必要的回顾是很必要的.没有理论的基础,讲再多的应用都是空中楼阁.本文主要设涉及线性代数和矩阵论 ...

  5. 科学计算:Python VS. MATLAB(4)----图形系统简介

    科学计算:Python VS. MATLAB(4)----图形系统简介 一.一般概念 图形系统就是用来实现所谓的可视化的.在学习具体的命令之前,先了解一个可视化的图形具有哪些特征,以及这些特征具有什么 ...

  6. numpy 创建加一行_数据科学|可视化图解Python科学计算包Numpy

    文章申明 文章作者:梁斌伟 责任编辑:郭德真 微信编辑:玖蓁 本文转载自公众号 实战统计学 (ID:statrcn) 原文链接:可视化图解Python科学计算包NumPy 作者:梁斌伟 编者按: 你真 ...

  7. python科学计算库-python 科学计算基础库安装

    1.numpy NumPy(Numeric Python)是用Python进行科学计算的基本软件包. NumPy是Python编程语言的扩展,增加了对大型多维数组和矩阵的支持,以及一个大型的高级数学函 ...

  8. 物理学常数 matlab,[转载]科学计算:Python VS. MATLAB(6)----物理常数

    科学计算:Python VS. MATLAB(6)----物理常数 物理常数亦被称为物理学常量或自然常数,指的是物理学中数值固定不变的物理量,是一个与物理测量无关的固定值.物理常数有很多,其中比较著名 ...

  9. 【A-003】python数据分析与机器学习实战 Python科学计算库 Pandas数据分析处理库(二)

    目录: 处理缺失数据制作透视图删除含空数据的行和列多行索引使用apply函数 本节要处理的数据来自于泰坦尼克号的生存者名单,它的数据如下: PassengerId Survived Pclass .. ...

  10. 《从问题到程序:用Python学编程和计算》——第2章 计算和编程初步 2.1 数值表达式和算术...

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.1节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 第2 ...

最新文章

  1. Android 网卡地址Mac Wifi文件
  2. 计算机毕业生“一看就想留下”的简历
  3. 什么才是软件开发的葵花宝典?
  4. socket认证客户端链接合法性
  5. 微软二合一能装python吗_微软再出神器,这次终于对Python下手了!
  6. QTP对象TO与RO
  7. windows怎么将图片变为单色图片_印刷丨单色黑与四色黑
  8. 荣耀Magic4性能体验超苹果再次实锤!非官方游戏性能对比出炉
  9. 今天的练习是敏捷结果30天的最后一天
  10. sqlalchemy limitorder
  11. 字典树 之 hdu 1247
  12. 会c语言如何快速入门python,初学者如何从C语言到Python的转化(北大陈斌老师的举例 )...
  13. 【软考】算法与数据结构复习指南
  14. SQL语言概况(4.1)
  15. as本地仓库更改_如何将源仓库的更改同步到fork仓库?
  16. GNSS数据处理(二)——GAMP_GOOD操作说明
  17. python实现鼠标自动点击屏幕
  18. Flink StreamingFileSink写入hdfs,文件一直处于inprogress
  19. 那些曾经被央视拿来跟韩寒作对比的三好学生们,十年之后,再看看(转)
  20. 运算放大器---转换速率(slew rate)

热门文章

  1. 计算机组成原理微课版(谭志虎主编)预习笔记
  2. 安装Python解释器【图文集合 - 详细流程】
  3. 微信小程序使用其他字体
  4. Chrome浏览器如何完美实现截长屏幕
  5. visio给图片添加任意形状外框
  6. SHP格式以及SHP矢量数据编辑软件ShpEditor介绍
  7. python中unicode编码表_python unicode 编码整理
  8. java实现人脸识别源码【含测试效果图】——前期准备工作及访问提示
  9. 数据库——模式分解和关系范式的分解
  10. 擦地机器人修理_第一次修扫地机器人