numpy库(python)
NumPy是用Python.进行科学计算,尤其是数据分析时,所用到的一个基础库。它是大量Python
数学和科学计算包的基础,比如后面要讲到的pandas)库就用到了NumPy。pandas库专门用于数据
分析,充分借鉴了Python标准库NumPy的相关概念。而Python标准库所提供的内置工具对数据分
析方面的大多数计算来说都过于简单或不够用。
1.numpy简介
Pytho语言诞生不久,开发人员就产生了数值计算的需求,更为重要的是,科学社区开始考
虑用它进行科学计算。
1995年,Jim Hugunin开发了Numeric,这是第一次尝试用Python进行科学计算。随后又诞生了
Numarray包。这两个包都是专门用于数组计算的,但各有各的优势,开发人员只好根据不同的使用
场景,从中选择效率更高的包。由于两者之间的区别并不那么明确,开发人员产生了把它们整合为
.个包的想法。Travis Oliphanti遂着手开发NumPyl库,并于2006年发布了它的第一个版本(v1.0)。
从此之后,NumPy成为Python科学计算的扩展包。如今,在计算多维数组和大型数组方面,
它是使用最广的。此外,它还提供多个函数,操作起数组来效率很高,还可用来实现高级数学运
算。
当前,NumPyz是开源项目,使用BSD许可证。在众多开发者的支持下,这个库的潜力得到了
进一步挖掘。
2.安装numpy
pip install numpy
3.ndarry : numpy库的心脏
整个NumPy库的基础是ndarray(N-dimensional array,W维数组)对象。它是一种由同质元素
组成的多维数组,元素数量是事先指定好的。同质指的是几乎所有元素的类型和大小都相同。事
实上,数据类型由另外一个叫作dtype(data-ype,数据类型)的NumPy对象来指定;每个ndarray
只有一种dtype类型。
数组的维数和元素数量由数组的型(shape)来确定,数组的型由N个正整数组成的元组来指
定,元组的每个元素对应每一维的大小。数组的维统称为轴(axes),轴的数量被称作秩(rank)。
NumPy数组的另一个特点是大小固定,也就是说,创建数组时一旦指定好大小,就不会再发
生改变。这与Python的列表有所不同,列表的大小是可以改变的。
定义ndarray最简单的方式是使用array()函数,以Python列表作为参数,列表的元素即是
ndarray的元素。
import numpy as np
a = np.array([1,2,3])
print(a[1])
3.1 创建数组
数组的创建方法有几种,最常用的就是前面你见过的,使用arry()函数,参数为单层或嵌套列表。
import numpy as np
a = np.array([[1,2,3],[1,2,3]])
print(a)
除了列表,array()函数还可以接收嵌套元组或元组列表作为参数。
a = np.array(((1,2,3),(1,2,3)))
print(a)
此外,参数可以是由元组或列表组成的列表,其效果相同。
a = np.array(((1,2,3),[1,2,3],(1,2,3)))
print(a)
3.2数据类型
到目前为止,我们只使用过简单的整型和浮点型数据类型,其实NuPy数组能够包含多种数据类型。
3.3dtype
array()函数可以接收多个参数。每个ndarray()对象都有一个与之相关联的dtype对象,该对
象唯一定义了数组中每个元素的数据类型。array()函数默认根据列表或元素序列中各元素的数
据类型,为ndarray()对象指定最适合的数据类型。但是,你可以用dtypej选项作为函数array()
的参数,明确指定dtypel的类型。
例如,如要定义一个复数数组,可以像下面这样使用dtype选项:
a = np.array(((1,2,3),[1,2,3],(1,2,3)),dtype=complex)
print(a)
numpy库(python)的更多相关文章
- Python的numpy库下的几个小函数的用法
numpy库是Python进行数据分析和矩阵运算的一个非常重要的库,可以说numpy让Python有了matlab的味道 本文主要介绍几个numpy库下的小函数. 1.mat函数 mat函数可以将目标 ...
- Python数据分析numpy库
1.简介 Numpy库是进行数据分析的基础库,panda库就是基于Numpy库的,在计算多维数组与大型数组方面使用最广,还提供多个函数操作起来效率也高 2.Numpy库的安装 linux(Ubuntu ...
- Python的Numpy库简述
numpy 是 python 的科学计算库import numpy as np 1.使用numpy读取txt文件 # dtype = "str":指定数据格式 # delimite ...
- Python 的 Numpy 库
Numpy: # NumPy库介绍 # NumPy的安装 # NumPy系统是Python的一种开源的数值计算扩展 # 可用来存储和处理大型矩阵. # 因为不是Python的内嵌模块,因此 ...
- $python数据分析基础——初识numpy库
numpy库是python的一个著名的科学计算库,本文是一个quickstart. 引入:计算BMI BMI = 体重(kg)/身高(m)^2 假如有如下几组体重和身高数据,让求每组数据的BMI值: ...
- Python的工具包[0] -> numpy科学计算 -> numpy 库及使用总结
NumPy 目录 关于 numpy numpy 库 numpy 基本操作 numpy 复制操作 numpy 计算 numpy 常用函数 1 关于numpy / About numpy NumPy系统是 ...
- Python之Numpy库常用函数大全(含注释)
前言:最近学习Python,才发现原来python里的各种库才是大头! 于是乎找了学习资料对Numpy库常用的函数进行总结,并带了注释.在这里分享给大家,对于库的学习,还是用到时候再查,没必要死记硬背 ...
- Python数据分析与展示(1)-数据分析之表示(1)-NumPy库入门
Numpy库入门 从一个数据到一组数据 维度:一组数据的组织形式 一维数据:由对等关系的有序或无序数据构成,采用线性方式组织. 可用类型:对应列表.数组和集合 不同点: 列表:数据类型可以不同 数组: ...
- 用python的matplotlib和numpy库绘制股票K线均线和成交量的整合效果(含量化验证交易策略代码)
在用python的matplotlib和numpy库绘制股票K线均线的整合效果(含从网络接口爬取数据和验证交易策略代码)一文里,我讲述了通过爬虫接口得到股票数据并绘制出K线均线图形的方式,在本文里,将 ...
- Python之Numpy库常用函数大全(含注释)(转)
为收藏学习,特转载:https://blog.csdn.net/u011995719/article/details/71080987 前言:最近学习Python,才发现原来python里的各种库才是 ...
随机推荐
- [简单] 树上的dfs & bfs_洛谷P5908 猫猫和企鹅
题目链接https://www.luogu.com.cn/problem/P5908 题目大意: \[\begin{align*} & 给定n个点构成一颗树 每条边val=1\\ & ...
- 一个好用的消息推送服务【Server 酱】
今天给大家介绍一个好用的消息推送服务Server 酱 Server 酱简介 Server 酱是什么 「Server 酱」,英文名「ServerChan」,是一款「手机」和「服务器」.「智能设备」之间的 ...
- SMU Summer 2024 Contest Round 5
SMU Summer 2024 Contest Round 5 Robot Takahashi 思路 按照 \(W_i\) 排个序,算一下前缀后缀 1 和 0 的个数就行了.答案大概是一个 \(\ma ...
- SMU 2024 spring 天梯赛2
SMU 2024 spring 天梯赛2 7-1 计算指数 - SMU 2024 spring 天梯赛2 (pintia.cn) #include <bits/stdc++.h> usin ...
- SMU Autumn 2023 Round 4(Div.1+2)
SMU Autumn 2023 Round 4(Div.1+2) A. Access Denied 通过分析样例可以得知如果所猜字符串与答案字符串长度不同,则只要\(5ms\),且答案最多\(20\) ...
- Mybatis Log 插件
目前的idea插件已经开始收费---找了一个免费的插件安装到idea中重启一下就可以了 百度网盘提取码:sjc8
- windows中MySQL迁移数据存放盘符位置
由于刚开始安装mysq时都选择了默认安装,数据存放在了c盘,后面数据量过大c盘不堪重负,所以迁移数据到D盘 windows中MySQL迁移数据存放盘符位置 参考: https://blog.csdn. ...
- Nuitka打包
Nuitka打包PySide6/PyQt 本文仅供本人知识总结使用,所以内容会比较浅显,不喜勿喷. 文章目录 Nuitka打包PySide6/PyQt 一.需要C++编译器 二.安装Nuitka 三. ...
- LaTeX 编译 acmart 文档报错:No country present for an affiliation.
在编译一篇从 arXiv 下载的文档时遇到如下错误: Class acmart Error: No country present for an affiliation. 有两种解决方案: 将错误降级 ...
- Chrome 浏览器插件获取网页 window 对象(方案三)
前言 最近有个需求,是在浏览器插件中获取 window 对象下的某个数据,当时觉得很简单,和 document 一样,直接通过嵌入 content_scripts 直接获取,然后使用 sendMess ...