004 Numpy
一:Numpy介绍
1.简介
Numerical Python
就是数值python包,是python进行科学计算的一个基础包,因此要更好的理解与掌握python科学计算包,尤其是pandas,需要先掌握numpy库的用法。
2.Numpy包括的内容
是开源的数值计算扩展,主要包括:
一个具有矢量算法计算和复杂广播能力的快速且节省空间的多维数组,称为ndarray
用于对整组数据进行快速运算的标准数学函数,ufunc(universal function object)
用于整合C/C++和Fortran代码的工具包
使用的线性代数,傅里叶变换和随机数生成函数
3.约定的导入方式
import numpy as np
二:ndarry属性
1.介绍
一种有相同类型的元素组成的多维数组,元素数量是事前指定好的
元素的数据类型由dtype对象来指定,每个ndarry只有一种dtype类型
大小固定,创建好数组一旦指定好大小,就不会再发生改变
竖着是0轴,横着的为1轴。
2.创建

3.ndarry属性
ndim:维度数量
shape:是一个各维度大小的元祖,即数组的形状
dtype:一个用于说明数组元素数据类型的对象
size:元素的总个数

4.dtype的界定
np.array(['python','hello','java','html'],dtype='|S1')
结果是只显示每个字符串的第一个单词。

5.shape计算

6.取值

三:ndarray的常见创建方式
1.方式
array函数:接受一个普通的python序列,转成ndarray
zeros函数:创建指定长度或者形状的全零数组
ones函数:创建指定长度或者形状的全1数组
empty函数:创建一个没有任何具体值得数组(随机的数字进行填充)
2.zeros函数
里面使用元祖

3.ones函数

4.empty函数

四:ndarry的其他创建方式
1.方式
都是创建的一维数组。
arange函数
linspace函数
logspace函数
使用随机数填充数组
2.arange函数
与range比较像,但是有区别
不包含尾数。

3.linspace函数
包含尾数。

4.logspace函数

5.重改维度(里面也是元组)
.reshape()
.reshape((4,-1)):-1 则会自动计算纬度值
这个是一个视图,修改其中的一个,就会影响其他的。
6.random生成随机数(里面也是元组)
np.random.random()

五:Numpy中的数据类型
1.dtype
Numpy创建的数组可以通过dtype属性闲时指定数据类型,如果不指定,会自动判断出合适的数据类型,所以一般无需现时指定。
2.astype方法
可以转换数组的元素数据类型,得到一个新数组。

3.视图与副本
副本:.copy
视图:reshape,上面说过。
4.数据类型



004 Numpy的更多相关文章
- Numpy中的时间类型
从Numpy1.7开始,已经有了原生的日期-时间支持,基本类型称为datetime64. In [1]: import numpy as np In [2]: nd = np.datetime64(' ...
- [Pandas] 01 - A guy based on NumPy
主要搞明白NumPy“为什么快”. 学习资源 Panda 中文 易百教程 远程登录Jupyter笔记本 效率进化 四步效率优化 NumPy 底层进行了不错的优化. %timeit 对于任意语句,它会自 ...
- Numpy的终极备忘录
转: Numpy的终极备忘录 作者|Rashida Nasrin Sucky编译|VK来源|Towards Data Science Python是开源的.对于使用python的数据科学家来说,Num ...
- 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片
概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- 利用Python进行数据分析(6) NumPy基础: 矢量计算
矢量化指的是用数组表达式代替循环来操作数组里的每个元素. NumPy提供的通用函数(既ufunc函数)是一种对ndarray中的数据进行元素级别运算的函数. 例如,square函数计算各元素的平方,r ...
- python安装numpy、scipy和matplotlib等whl包的方法
最近装了python和PyCharm开发环境,但是在安装numpy和matplotlib等包时出现了问题,现总结一下在windows平台下的安装方法. 由于现在找不到了工具包新版本的exe文件,所以采 ...
- 深入理解numpy
一.为啥需要numpy python虽然说注重优雅简洁,但它终究是需要考虑效率的.别说运行速度不是瓶颈,在科学计算中运行速度就是瓶颈. python的列表,跟java一样,其实只是一维列表.一维列表相 ...
- Python Numpy,Pandas基础笔记
Numpy Numpy是python的一个库.支持维度数组与矩阵计算并提供大量的数学函数库. arr = np.array([[1.2,1.3,1.4],[1.5,1.6,1.7]])#创建ndarr ...
随机推荐
- js判断当前浏览器是pc端还是移动端
根据用户的访问设备的不同来显示不同的页面样式,主要是判断移动设备还是电脑浏览器访问的. 下面给出js判断处理代码,以作参考. <script type="text/javascript ...
- JS中双等号“==”使用情况
1.判断一个对象的值是否存在 var obj = {}; if(obj.a == null) { // todo } 2. 判断函数入参是否存在 function (a, b) { if(a == n ...
- 编译的java工程压缩上传到linux服务器上后,中文的类名显示乱码
首先声明,类名是用中文命名的,这个别人写的,不允许修改. 本地用7zip软件压缩成zip包,传到服务器解压,发现中文的class文件名称是乱码. 解决办法: 方法一:使用jar命令打成jar包,传到服 ...
- tomcat启动时,内存溢出,Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "main"
问题原因 通过tomcat启动项目,也许是因为项目太大,配置的内存不够用了.老是报内存溢出的问题. 解决办法 1.选中项目 右键 run as ->Run Configurations... ...
- Java并发编程原理与实战四十:JDK8新增LongAdder详解
传统的原子锁AtomicLong/AtomicInt虽然也可以处理大量并发情况下的计数器,但是由于使用了自旋等待,当存在大量竞争时,会存在大量自旋等待,而导致CPU浪费,而有效计算很少,降低了计算效率 ...
- Java入门系列(四)内部类
为什么需要内部类? 真正的原因是这样的,java中的内部类和接口加在一起,可以的解决常被C++程序员抱怨java中存在的一个问题没有多继承.实际上,C++的多继承设计起来很复杂,而java通过内部类加 ...
- 多年前写的DataTable与实体类的转换
介绍 介绍 很多年前一直使用Ado.net,后来慢慢转型到其他的orm,在转型过程中,有意向将两者的模型结合起来,利用DataTable中的行状态完善一些mvc中的数据控制作用.现在把它放出来,留个纪 ...
- LintCode 204: Singleton
LintCode 204: Singleton 题目描述 单例是最为最常见的设计模式之一.对于任何时刻,如果某个类只存在且最多存在一个具体的实例,那么我们称这种设计模式为单例.例如,对于class M ...
- 《区块链100问》第84集:资产代币化之对标黄金Digix
黄金是避险的不二选择.Digix发行的黄金代币则是数字资产世界里的黄金,其代币简称DGX,能够在数字资产世界中起到避险的作用. DGX如何实现对标黄金呢?它将黄金资产进行了上链(即:区块链)操作.举个 ...
- 利用phpMyAdmin提权
利用phpMyAdmin提权 发表于 2016-03-31 | 分类于 phpMyAdmin | 暂无评论 | 9次阅读 爆路径 /phpmyadmin/libraries/lec ...