numpy库的认识以及数组的创建
numpy库
numpy是Python数值计算最重要的基础包。大多数提供科学计算的包都是用NumPy的数组作为构建基础。numpy十分高效,基于NumPy的算法要比纯Python快10到100倍(甚至更快),并且使用的内存更少。
NumPy的ndarray
初步用法
导入库
import numpy as np#常规用法
生成随机矩阵
import numpy as np
data=np.random.randn(2,3)#生成一个两行三列的随机数组
print(data)
简单运算
相乘
import numpy as np
data=np.random.randn(2,3)#生成一个两行三列的随机数组
print(data)
data=data*10
print(data)
相加
import numpy as np
data=np.random.randn(2,3)#生成一个两行三列的随机数组
print(data)
data=data+data
print(data)
ndarray对象
ndarray是一个N维的数组对象,它是一个大数据集的容器,注意的是它其中元素的类型必须相同。
除此之外它具有两个属性,分别是shape和dtype。
import numpy as np
data=np.random.randn(2,3)#生成一个两行三列的随机数组
print(data.shape)#几行几列
print(data.dtype)#集合中的数据类型
创建ndarray
1.使用列表
>>> import numpy as np
>>> data1=[1,2,3,4,5]
>>> arr1=np.array(data1)
>>> arr1
array([1, 2, 3, 4, 5])
2.列表嵌套
>>> data2=[[1,2,3,4],[5,6,7,8]]
>>> arr2=np.array(data)
>>> arr2=np.array(data2)
>>> arr2
array([[1, 2, 3, 4],
[5, 6, 7, 8]])
对应的维度
>>> arr2.ndim
2
>>> arr2.shape
(2, 4)
3.创建空数组
>>> import numpy as np
>>> np.zeros(10)#创建一维数组
array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])
>>> np.zeros((3,6))#创建多维数组,三行六列
array([[0., 0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0., 0.]])
4.创建纯一数组
>>> np.ones(10)
array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.])
>>> np.ones((3,6))
array([[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.]])
5.使用empty创建数组
>>> np.empty((2,3,2))
array([[[7.70742408e-322, 0.00000000e+000],
[0.00000000e+000, 0.00000000e+000],
[8.97323639e-315, 8.97323686e-315]],
[[8.97132801e-315, 8.97321639e-315],
[0.00000000e+000, 0.00000000e+000],
[0.00000000e+000, 0.00000000e+000]]])
注意:认为np.empty会返回全0数组的想法是不安全的。很多情况下(如前所示),它返回的都是一些未初始化的垃圾值。
6.使用arange创建
arange是Python内置函数range的数组版:
>>> np.arange(15)
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
numpy库的认识以及数组的创建的更多相关文章
- 一、Numpy库与多维数组
# Author:Zhang Yuan import numpy as np '''重点摘录: 轴的索引axis=i可以理解成是根据[]层数来判断的,0表示[],1表示[[]]... Numpy广播的 ...
- python中numpy库ndarray多维数组的的运算:np.abs(x)、np.sqrt(x)、np.modf(x)等
numpy库提供非常便捷的数组运算,方便数据的处理. 1.数组与标量之间可直接进行运算 In [45]: aOut[45]:array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ ...
- Numpy 学习之路(1)——数组的创建
数组是Numpy操作的主要对象,也是python数据分析的主要对象,本系列文章是本人在学习Numpy中的笔记. 文章中以下都基于以下方式的numpy导入: import numpy as np fro ...
- Python数据分析numpy库
1.简介 Numpy库是进行数据分析的基础库,panda库就是基于Numpy库的,在计算多维数组与大型数组方面使用最广,还提供多个函数操作起来效率也高 2.Numpy库的安装 linux(Ubuntu ...
- (一)初识NumPy库(数组的创建和变换)
在学习数据分析时,NumPy作为最基础的数据分析库,我们能够熟练的掌握它是学习数据分析的必要条件.接下来就让我们学习该库吧. 学习NumPy库的环境: python:3.6.6 编辑器:pycharm ...
- numpy库中数组的数据类型
numpy库中数组的数据类型 dtype是一个特殊的对象,它含有ndarray将一块内存解释为特殊数据类型所需要的信息 指定数据类型创建数组 >>> import numpy as ...
- numpy数组的创建
创建数组 创建ndarray 创建数组最简单的方法就是使用array函数.它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组. array函数创建数组 import ...
- Numpy | 06 从已有的数组创建数组
numpy.asarray numpy.asarray 类似 numpy.array,但 numpy.asarray 参数只有三个,比 numpy.array 少两个. numpy.asarray(a ...
- 吴裕雄--天生自然Numpy库学习笔记:Numpy 数组操作
import numpy as np a = np.arange(8) print ('原始数组:') print (a) print ('\n') b = a.reshape(4,2) print ...
随机推荐
- 故障检测、性能调优与Java类加载机制
故障检测.性能调优与Java类加载机制 故障检测.性能调优 用什么工具可以查出内存泄露 (1)MerroyAnalyzer:一个功能丰富的java堆转储文件分析工具,可以帮助你发现内存漏洞和减少内存消 ...
- springCloud——Eureka、Ribbon理解
一. 服务注册中心.服务提供者.服务消费者 如何通信? 客户端: 应用主类中配置@EnableDiscoveryClient application.properties中配置defaultZone指 ...
- Prim算法和Kruskal算法的正确性证明
今天学习了Prim算法和Kruskal算法,因为书中只给出了算法的实现,而没有给出关于算法正确性的证明,所以尝试着给出了自己的证明.刚才看了一下<算法>一书中的相关章节,使用了切分定理来证 ...
- sqli-labs(29)
0X01 题目说有waf 那我们先来试探一波 ?id=-' union select 1,database(),3%23 成功了 那么他的WAF过滤了什么呐? 这是index.php的源码并没有过滤什 ...
- JPA使用中遇到Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: XXX is not mapped
在写自定义查询时,Query注解中写的JPQL,表名和列名都应该是映射的Java类和属性,不能写表名或者字段名
- hibernate注解创建表总是失败,显示表不存在
import java.io.Serializable; import javax.persistence.*; import org.hibernate.annotations.GenericGen ...
- Linux_文件系统、磁盘分区_RHEL7
目录 目录 前言 文件系统 目录结构 文件的类型 文件系统损坏后的修复 磁盘分区 分区的类型 分区最小存储单元 查看当前分区的block的大小 分区格式 MBR格式 GPT格式 mount挂载指令 挂 ...
- Unity3D 协程 Coroutine
协程(Coroutine)的概念存在于很多编程语言,例如Lua.ruby等.而由于Unity3D是单线程的,因此它同样实现了协程机制来实现一些类似于多线程的功能,但是要明确一点协程不是进程或线程,其执 ...
- delphi将程序最小化至右下角
程序新手,如果有不恰当的地方,请大家帮忙改正! 1.下载并安装Raize.v5.5控件,delphi版本为:delphi 7.0. 2.添加RzTrayIcon控件.PopupMenu控件至窗体上. ...
- WPF 带有提示文本的透明文本框
<TextBox Text="{Binding SearchInfo, UpdateSourceTrigger=PropertyChanged}" Grid.Row=&quo ...