初探numpy
安装numpy
通过python pip安装numpy
pip install numpy
numpy ndarray对象
创建ndarray对象只需调用numpy的array函数即可
numpy.array(object , dtype = None , copy = True , order = None , subok = False , ndmin = 0)
| 参数 | 描述 |
|---|---|
| object | 数组或嵌套的数列 |
| dtype | 数组元素的数据类型 |
| copy | 对象是否需要复制 |
| order | 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认) |
| subok | 默认返回一个与基类类型相同的数组 |
| ndmin | 指定生成数组的最小维度 |
import numpy as np
array=np.array([1,2,3])
print(array)
[1 2 3]
array=np.array([[1,2],[3,4]])
print(array)
[[1 2]
[3 4]]
#最小维度测试
array=np.array([1,2,3],ndmin=2)
print(array)
[[1 2 3]]
#dtype参数测试
array=np.array([1,2,3],dtype=float)
print(array)
[1. 2. 3.]
numpy常用数据类型
| 类型 | 类型代码 | 描述 |
|---|---|---|
| int8、uint8 | i1、u1 | 有符号和无符号的8位(1个字节)整型 |
| int16、uint16 | i2、u2 | 有符号和无符号的16位(2个字节)整型 |
| int32、uint32 | i4、u4 | 有符号和无符号的32位(4个字节)整型 |
| int64、uint64 | i8、u8 | 有符号和无符号的64位(8个字节)整型 |
| float16 | f2 | 半精度浮点数,包括:1个符号位,5个指数位,10个尾数位 |
| float32 | f4或f | 标准的单精度浮点数,包括:1个符号位,8个指数位,23个尾数位。与C的float兼容 |
| float64 | f8或d | 标准的单精度浮点数,包括:1个符号位,11个指数位,52个尾数位。与C的double和Python的float对象兼容 |
| complex64、complex128 | c8、c16 | 分别用两个32位、64位浮点数表示的复数 |
| bool | ? | 布尔数据类型(表示True或False) |
数据类型对象(dtype)
dtype对象使用dtype函数构造
numpy.dtype(object , align , copy)
| 参数 | 描述 |
|---|---|
| object | 要转化为的数据对象 |
| align | 如果为True,使其形成类似C的结构体 |
| copy | 复制dtype对象,如果为False,则是对内置函数类型对象的引用 |
import numpy as np
#使用标量类型
dt=np.dtype(np.int64)
print(dt)
int64
#使用类型代码
dt=np.dtype('u8')
print(dt)
uint64
array=np.array([1,2,3],dtype=float)
print(array)
print(array.dtype)
[1. 2. 3.]
float64
ndarray对象属性
ndarray对象属性有:
| 属性 | 描述 |
|---|---|
| ndarray.ndim | 秩,即轴的数量或维度的数量 |
| ndarray.shape | 数组的维度,对应矩阵,m行n列 |
| ndarray.size | 数组元素的个数,相当于.shape中的m*n的值 |
| ndarray.dtype | ndarray对象的元素类型 |
| ndarray.itemsize | ndarray对象每个元素的大小,以字节为单位 |
| ndarray.flags | ndarray对象的内存信息 |
| ndarray.real | ndarray对象的实部 |
| ndarray.imag | ndarray对象的虚部 |
import numpy as np
#ndim属性
array_a=np.array([1,2,3,4,5,6,7,8])
print(array_a)
print(array_a.ndim)
#调整大小
array_b=array_a.reshape(2,2,2)
print(array_b)
print(array_b.ndim)
[1 2 3 4 5 6 7 8]
1
[[[1 2]
[3 4]]
[[5 6]
[7 8]]]
3
#shape属性
array=np.array([[1,2],[3,4]])
print(array)
print(array.shape)
#调整大小
array.shape=(4,1)
print(array)
#通过reshape函数调整大小
array=array.reshape(1,4)
print(array)
[[1 2]
[3 4]]
(2, 2)
[[1]
[2]
[3]
[4]]
[[1 2 3 4]]
#itemsize属性
array_a=np.array([1,2,3],dtype=np.int64)
print(array_a.itemsize)
array_b=np.array([1,2,3],dtype=np.int8)
print(array_b.itemsize)
8
1
初探numpy的更多相关文章
- 初探numpy——广播和数组操作函数
numpy广播(Broadcast) 若数组a,b形状相同,即a.shape==b.shape,那么a+b,a*b的结果就是对应数位的运算 import numpy as np a=np.array( ...
- 初探numpy——numpy常用通用函数
numpy通用函数 快速的逐元素数组函数,也可以称为ufunc,对ndarray数据中的元素进行逐元素操作的函数 一元通用函数 函数名 描述 abs.fabs 取绝对值 sqrt 计算平方根,等同于a ...
- Numpy科学计算工具
Numpy初探 Numpy基础数据结构 Numpy数组是一个多维数组,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的原数据 导入该库: import numpy as np 多维数组 ...
- 科学计算工具-Numpy初探
Numpy基础数据结构 Numpy数组是一个多维数组,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的原数据 导入该库: import numpy as np 多维数组ndarray ...
- numpy的初探
# data = numpy.genfromtxt("C:\\Users\\Admin\Desktop\\111.txt", delimiter='\t', dtype='str' ...
- numpy之初探排序和集合运算
排序 排序 numpy与python列表内置的方法类似,也可通过sort方法进行排序. 用法如下: In [1]: import numpy as np In [2]: x = np.random.r ...
- python大数据初探--pandas,numpy代码示例
import pandas as pd import numpy as np dates = pd.date_range(',periods=6) dates import pandas as pd ...
- PROJ4初探(转并整理格式)
PROJ4初探(转并整理格式) Proj4是一个免费的GIS工具,软件还称不上. 它专注于地图投影的表达,以及转换.采用一种非常简单明了的投影表达--PROJ4,比其它的投影定义简单,但很明显.很容易 ...
- NumPy简明教程
源地址:http://blog.csdn.net/sunny2038/article/details/9002531 http://blog.csdn.net/sunny2038/article/de ...
随机推荐
- Connections in Galaxy War ZOJ - 3261 (并查集)
点权并查集的反向离线操作 题目大意:有n个stars,每一个都一定的“颜值”.然后stars与stars之间可以相连,query c表示再与c相连的stars中,颜值比c高的,stars的标号,如果有 ...
- 带权值的LCA
例题:http://poj.org/problem?id=1986 POJ1986 Distance Queries Language: Default Distance Queries Time L ...
- Mysql使用终端操作数据库
使用终端操作数据库 1.如何查看有什么数据库? show databases; 2.如何选择数据库? use databasesName; 3. ...
- spark 集群优化
只有满怀自信的人,能在任何地方都怀有自信,沉浸在生活中,并认识自己的意志. 前言 最近公司有一个生产的小集群,专门用于运行spark作业.但是偶尔会因为nn或dn压力过大而导致作业checkpoint ...
- Linux-监控与安全运维之zabbix
zabbix: Zabbix是一个开源分布式监控平台,包含诸多监控功能,用于构建一个符合企业级的监控解决方案.软件由开源社区提供开发和维护,遵循GPL协议,可以自由传播和使用,但开发团队提供收费的技术 ...
- gloo基本知识
Architechture(架构) Gloo通过Envoy XDS gRPC API来动态更新Envoy配置, 更方便的控制Envoy Proxy, 并保留扩展性..本质是一个Envoy xDS配置翻 ...
- 不是广告--如何学Java,我说点不太一样的学习方式
首先声明,这篇文章不是卖课程.介绍培训班的广告. 最近有不少读者通过微信问我:小白应该怎么学好 Java? 提问的人里有在校大学生.有刚参加工作的.有想转行做程序员的,还有一部分是最近找工作不顺的. ...
- Java Web教程——检视阅读
Java Web教程--检视阅读 参考 java web入门--概念理解.名词解释 Java Web 教程--w3school 蓝本 JavaWeb学习总结(一)--JavaWeb开发入门 小猴子mo ...
- MySQL主从数据库配置与原理
1.为什么要搭建主从数据库 (1)通过增加从库实现读写分离,提高系统负载能力 (2)将从库作为数据库备份库,实现数据热备份,为数据恢复提供机会 (3)根据业务将不同服务部署在不同机器同时又共享相同的数 ...
- PHP面向对象之重写与重载
/*** ====笔记部分==== 重写/覆盖 override 指:子类重写了父类的同名方法 重载: overload 重载是指:存在多个同名方法,但参数类型/个数不同. 传不同的参数,调用不同的方 ...