NumPy 基础用法
NumPy 是高性能科学计算和数据分析的基础包. 它是 pandas 等其他各种工具的基础.
主要功能:
- ndarray 一个多维数组结构, 高效且节省空间
- 无需循环对整组数据进行快速运算的数学函数
- 线性代数, 随机数生成和傅里叶变换功能
ndarry 多维数组
- 创建ndarry:
np.array(array_like) - 数组与列表的区别:
- 数组对象类元素类型必须相同
- 数组大小不可修改
ndarry 常用属性
- T: 数组的转置
- size: 数组元素个数
- ndim: 数组的维数
- shape: 数组的维度大小(元组形式)
- dtype: 数组元素的数据类型
ndarry 创建方法
- array() 将列表转为数组, 可选择显式指定 dtype
- arange() range 的 numpy 版支持浮点数
- linspace() 类似 arange(), 第三个参数为数组长度
- zero() 根据指定形状和 dtype 创建全0数组
- ones() 根据指定形状和 dtype 创建全1数组
- empty() 根据指定形状和 dtype 创建空数组(内存随机值)
- eye() 根据指定边长和 dtype 创建单位矩阵
ndarray 索引
- 一维数组索引
a[5] - 多维数组索引
a[2][3] 新式写法
a[2, 3](推荐)- 对于一个数组, 选出其第1, 3, 4, 6, 7个元素, 组成新的二维数组:
a[[1,3,4,6,7]] - 布尔型索引, 选出所有大于5的偶数:
a[(a>5) & (a%2=0)] - 布尔型索引, 选出所有大于5的数和偶数:
a[(a>5) | (a%2=0)] 对于一个二维数组, 选出其第一列和第三列, 组成新的二维数组:
a[:, [1, 3]]
ndarry 切片
- 一维数组的切片: 与列表类似
- 多维数组的切片: a[1:2, 3:4] a[:, 3:5] a[:, 1] (前行后列)
- 与列表切片的不同: 数组切片时并不会自动复制(而是创建一个视图), 在切片数组上的修改会影响原数组
- copy() 方法可以创建数组的深拷贝
NumPy 通用函数
浮点数特殊值
- nan(Not 啊Number) 不等于任何浮点数(nan != nan)
- inf(infinty) 比任何浮点数都大
- NumPy中创建特殊值 np.nan np.inf
- 在数据分析中, nan常被用做数据缺失值
一元函数
abs sqrt exp log ceil(向上取整) floor(向下取整) rint trunc modf isnan isinf cos sin tan
二元函数
add substract multiply divide power mod maximum mininum
数学和统计方法
- sum 求和
- mean 求平均数
- std 求标准差
- var 求方差
- min 求最小值
- max 求方差
- argmin 求最小值索引
- argmax 求最大值索引
随机数生成
- rand 给定形状产生随机数组(0到1之间的数)
- randin 给定形状产生随机整数
- choice 给定形状产随机选择
- shuffle 与random.shuffle相同
- uniform 给定形状产生随机数组
NumPy 基础用法的更多相关文章
- numpy基础用法学习
numpy get started 导入numpy库,并查看numpy版本 import numpy as np np.__version__ '1.14.0' 一.创建ndarray 1. 使用np ...
- Python Numpy shape 基础用法(转自他人的博客,如涉及到侵权,请联系我)
Python Numpy shape 基础用法 shape函数是numpy.core.fromnumeric中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度.它的输入 ...
- 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算
http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...
- 小白眼中的AI之~Numpy基础
周末码一文,明天见矩阵- 其实Numpy之类的单讲特别没意思,但不稍微说下后面说实际应用又不行,所以大家就练练手吧 代码裤子: https://github.com/lotapp/BaseCode ...
- python数据分析---第04章 NumPy基础:数组和矢量计算
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...
- [转]python与numpy基础
来源于:https://github.com/HanXiaoyang/python-and-numpy-tutorial/blob/master/python-numpy-tutorial.ipynb ...
- 数据分析-numpy的用法
一.jupyter notebook 两种安装和启动的方式: 第一种方式: 命令行安装:pip install jupyter 启动:cmd 中输入 jupyter notebook 缺点:必须手动去 ...
- 利用python进行数据分析--numpy基础
随书练习,第四章 NumPy基础:数组和矢量运算 # coding: utf-8 # In[1]: # 加注释的三个方法1.用一对"""括起来要注释的代码块. # 2. ...
- python数据分析 Numpy基础 数组和矢量计算
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...
随机推荐
- 【Visual Studio 扩展工具】使用 ComponentOne迷你图控件,进行可视化数据趋势分析
概述 迷你图 —— Sparklines是迷你的轻量级图表,有助于快速可视化数据. 它们是由数据可视化传奇人物Edward Tufte发明的,他将其描述为“数据密集,设计简单,字节大小的图形.”虽然迷 ...
- CSS基础学习(二) 之 width min-width max-width属性
width 1. 设置元素内容区(content area)的宽度. 2. 如果box-szing属性设置为border-box,width表示border area的宽度,如下图 min-width ...
- Mac配置Hadoop最详细过程
Mac配置Hadoop最详细过程 原文链接: http://www.cnblogs.com/blog5277/p/8565575.html 原文作者: 博客园-曲高终和寡 https://www.cn ...
- 【Python】【内置函数】
[fromkeys()] -- coding: utf-8 -- python 27 xiaodeng python之函数用法fromkeys() fromkeys() 说明:用于创建一个新字典,以序 ...
- JAVA深入研究——Method的Invoke方法(转)
原文地址:http://www.cnblogs.com/onlywujun/p/3519037.html 在写代码的时候,发现Method可以调用子类的对象,但子类即使是改写了的Method,方法名一 ...
- Session 和 Cookie的区别
2019-03-26 18:16:47 一.区别概论 Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群.数据库.文件中:Cookie是客户端保存用户信息的一种机制 ...
- 根据框架的dtd或xsd生成xml文件
下载Schema文件 首先要下载框架官网下的xsd或者xml文件,例如Spring官网地址,schema里面的就是xsd文件 Myeclipse中配置 我用的Myeclipse纯净版6.5,Windo ...
- Swapping Characters CodeForces - 903E (字符串模拟)
大意: 给定k个字符串, 长度均为n, 求是否存在一个串S, 使得k个字符串都可以由S恰好交换两个字符得到. 暴力枚举交换的两个字符的位置, 计算出交换后与其他串不同字符的个数, 若为1或>2显 ...
- 『TensorFlow』SSD源码学习_其七:损失函数
Fork版本项目地址:SSD 一.损失函数介绍 SSD损失函数分为两个部分:对应搜索框的位置loss(loc)和类别置信度loss(conf).(搜索框指网络生成的网格) 详细的说明如下: i指代搜索 ...
- MVC实战之排球计分(七)——软件的具体实现与测试
在前面的几篇博客中咱们已经写过了软件的大概实现,在这篇博客中将讲述此软件的具体实现与测试. 1,新建一个项目,命名为:Volleyball,选择基本模板.如图: 点击确定.创建项目. 2,右键单击mo ...