当前位置: 首页 > wzjs >正文

flowplayer wordpress海南seo

flowplayer wordpress,海南seo,定制网站开发与模板,宿州网站网站建设NumPy不仅是大量Python数学和科学计算包的基石,连我们后续将要详细学习的pandas库也正是基于NumPy构建的。相较于Python标准库内置的工具,NumPy为数据分析方面的大多数计算提供了更强大、更高效的支持。 3.1 NumPy 简史 NumPy的诞生源于Python语言发展初期对数值计算日益增长…

NumPy不仅是大量Python数学和科学计算包的基石,连我们后续将要详细学习的pandas库也正是基于NumPy构建的。相较于Python标准库内置的工具,NumPy为数据分析方面的大多数计算提供了更强大、更高效的支持。


3.1 NumPy 简史

NumPy的诞生源于Python语言发展初期对数值计算日益增长的需求,尤其是在科学计算领域的广泛应用。

  • 1995年: Jim Hugunin开发了Numeric,这是Python在科学计算领域的首次尝试。

  • 随后: 又诞生了Numarray包。Numeric和Numarray都专注于数组计算,但各有侧重。开发者们常常需要根据不同的使用场景来选择更高效的包,这种不明确的选择性促使了将两者整合为一个统一库的想法。

  • 2006年: Travis Oliphant着手开发NumPy库,并于2006年发布了它的第一个版本(v1.0)。

自此,NumPy成为了Python科学计算领域一个至关重要的扩展包。如今,它在处理多维数组和大型数组方面应用最为广泛。此外,NumPy还提供了大量高效的函数,能够对数组进行操作,并实现高级数学运算。

目前,NumPy是一个开源项目,采用BSD许可证,并在全球众多开发者的共同支持下持续发展,其潜力正被不断发掘。


3.2 NumPy 安装

通常情况下,大多数Python发行版(如Anaconda)都会将NumPy作为基础包预装。然而,如果你的环境中NumPy未被预装,你可以根据自己的操作系统类型进行手动安装:

  • Linux系统 (Ubuntu 和 Debian):

    sudo apt-get install python3-numpy
    

    (注意:对于Python 3,包名通常是python3-numpy。)

  • Linux 系统 (Fedora):

    sudo dnf install numpy scipy
    

    (注意:yum在较新的Fedora版本中已被dnf取代,且通常与scipy一同安装。)

  • 使用Anaconda发行版的Windows/macOS/Linux 系统:

    conda install numpy
    

当NumPy成功安装到你的系统后,你可以在Python交互式会话或脚本中通过以下代码导入NumPy模块:

>>> import numpy as np

我们通常使用np作为NumPy的别名,这是一种约定俗成的做法,方便我们后续的代码编写。


3.3 ndarray: NumPy库的心脏

整个NumPy库的核心是它的ndarray(N-dimensional array,N维数组)对象。ndarray是一种由同质元素组成的多维数组,其元素数量在创建时即已确定。所谓“同质”,指的是数组中的所有元素都具有相同的类型和大小。事实上,数据类型由另一个NumPy对象——dtype(data-type,数据类型)来指定;每个ndarray对象只允许拥有一种dtype类型。

数组的维度和元素数量由数组的(shape)来确定。数组的型由N个正整数组成的元组来指定,元组的每个元素对应每一维的大小。数组的各个维度统称为(axes),轴的数量则被称为(rank)。

NumPy数组的另一个重要特性是其固定大小。这意味着一旦数组创建并指定了大小,其大小就不会再发生改变。这与Python的内置列表有所不同,Python列表的大小是可变的。

定义ndarray最简单的方式是使用array()函数,并将Python列表作为参数传入,列表中的元素将成为ndarray的元素。

>>> a = np.array([1, 2, 3])
>>> a
array([1, 2, 3])

检测新创建的对象是否是ndarray非常简单,只需将新声明的变量传递给type()函数即可。

>>> type(a)
<class 'numpy.ndarray'>

调用变量的dtype属性,即可获知新建的ndarray属于哪种数据类型。

>>> a.dtype
dtype('int64')
# 在64位系统中,默认整数类型通常是int64

我们刚创建的这个数组只有一个轴,因此它的秩为1,型为(3,)。这些值的获取方法如下:轴数量使用ndim属性,数组长度使用size属性,而数组的型则用shape属性。

>>> a.ndim
1
>>> a.size
3
>>> a.shape
(3,)

你刚刚看到的这个数组是最简单的一维数组。但是,数组可以非常容易地扩展成多维。例如,我们可以定义一个2x2的二维数组:

>>> b = np.array([[1.3, 2.4], [0.3, 4.1]])
>>> b.dtype
dtype('float64')
>>> b.ndim
2
>>> b.size
4
>>> b.shape
(2, 2)

这个数组有两条轴,所以秩为2,每条轴的长度都是2。

ndarray对象还拥有另一个重要的属性叫做itemsize。它定义了数组中每个元素的长度(以字节为单位)。data属性则表示包含数组实际元素的缓冲区。data属性在实际操作中用得并不多,因为要获取数组中的元素,我们通常会使用接下来几节将学到的索引方法。

>>> b.itemsize
8 # 因为float64占用8个字节
>>> b.data
<memory at 0x...> # 这里的地址会根据你运行时的内存地址而变化,表示一个内存视图
3.3.1 创建数组

数组的创建方法有多种,最常用且最简单的方式就是前面我们已经见过的,使用array()函数,其参数可以是单层或嵌套的Python列表。

>>> C = np.array([[1, 2, 3], [4, 5, 6]])
>>> C
array([[1, 2, 3],[4, 5, 6]])

除了列表,array()函数还可以接收嵌套元组或元组列表作为参数。

>>> d = np.array(((1, 2, 3), (4, 5, 6)))
>>> d
array([[1, 2, 3],[4, 5, 6]])

此外,参数也可以是由元组或列表混合组成的列表,其效果是相同的。

>>> e = np.array([(1, 2, 3), [4, 5, 6], (7, 8, 9)])
>>> e
array([[1, 2, 3],[4, 5, 6],[7, 8, 9]])
3.3.2 数据类型

到目前为止,我们只使用过简单的整型和浮点型数据类型。实际上,NumPy数组能够包含多种复杂的数据类型(参见表3-1)。例如,可以使用字符串类型:

>>> g = np.array([['a', 'b'], ['c', 'd']])
>>> g
array([['a', 'b'],['c', 'd']], dtype='<U1') # '<U1' 表示Unicode字符串,长度为1
>>> g.dtype
dtype('<U1')
&g
http://www.dtcms.com/wzjs/181740.html

相关文章:

  • 医药网站文案编辑是怎么做的seo推广外包
  • 自己怎么做专属自己的网站网络营销活动策划方案
  • 山东通app官网下载二维码上海官网seo
  • 华耀建设网站竞价推广托管
  • 电子商务网站建设试卷与答案亚洲卫星电视网参数表
  • 成都公司网站seo山东seo首页关键词优化
  • 网站的url是什么百度广告语
  • 深圳专业网站建设公司排名郑州网络seo公司
  • 网站后台管理密码忘了扬州整站seo
  • 建设部网站撤销注册资质的都是公职人员吗搜索率最高的关键词
  • 国外对旅游网站建设的现状深圳网络推广渠道
  • 新疆建设云网站投诉电话新闻头条今日要闻最新
  • 复制网站 dedecmsseo工具优化软件
  • wordpress侧边栏滚动seo诊断工具网站
  • 网站做优化有用吗电商代运营一般收多少服务费
  • 百度站长工具有哪些成全在线观看免费高清动漫
  • wordpress产品图片怎么改sem对seo的影响有哪些
  • 咸宁市做网站网站设计方案模板
  • 策划公司排名seo引擎搜索入口
  • 商城网站源文件下载西地那非片的功能主治
  • 医院网站域名备案seo首页关键词优化
  • 婚恋公司销售好做吗seo黑帽多久入门
  • 郑州信息网平台无锡百度关键词优化
  • 找网络公司做的网站可以出售吗域名138查询网
  • 新疆住房建设部官方网站seo外包靠谱
  • 网站服务做推广公司网站怎么弄
  • 东坑东莞网站建设上优化seo
  • 网站建设开票写什么关键词广告
  • 企业做网站有发展么关键词优化seo费用
  • 松江做网站价格seo分析报告