安装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的更多相关文章

  1. 初探numpy——广播和数组操作函数

    numpy广播(Broadcast) 若数组a,b形状相同,即a.shape==b.shape,那么a+b,a*b的结果就是对应数位的运算 import numpy as np a=np.array( ...

  2. 初探numpy——numpy常用通用函数

    numpy通用函数 快速的逐元素数组函数,也可以称为ufunc,对ndarray数据中的元素进行逐元素操作的函数 一元通用函数 函数名 描述 abs.fabs 取绝对值 sqrt 计算平方根,等同于a ...

  3. Numpy科学计算工具

    Numpy初探 Numpy基础数据结构 Numpy数组是一个多维数组,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的原数据 导入该库: import numpy as np 多维数组 ...

  4. 科学计算工具-Numpy初探

    Numpy基础数据结构 Numpy数组是一个多维数组,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的原数据 导入该库: import numpy as np 多维数组ndarray ...

  5. numpy的初探

    # data = numpy.genfromtxt("C:\\Users\\Admin\Desktop\\111.txt", delimiter='\t', dtype='str' ...

  6. numpy之初探排序和集合运算

    排序 排序 numpy与python列表内置的方法类似,也可通过sort方法进行排序. 用法如下: In [1]: import numpy as np In [2]: x = np.random.r ...

  7. python大数据初探--pandas,numpy代码示例

    import pandas as pd import numpy as np dates = pd.date_range(',periods=6) dates import pandas as pd ...

  8. PROJ4初探(转并整理格式)

    PROJ4初探(转并整理格式) Proj4是一个免费的GIS工具,软件还称不上. 它专注于地图投影的表达,以及转换.采用一种非常简单明了的投影表达--PROJ4,比其它的投影定义简单,但很明显.很容易 ...

  9. NumPy简明教程

    源地址:http://blog.csdn.net/sunny2038/article/details/9002531 http://blog.csdn.net/sunny2038/article/de ...

随机推荐

  1. D. AB-string

    https://codeforces.com/contest/1238/problem/D 题目大意:统计good string的个数,good string的定义,给定的字符串中含有回文段落, 题解 ...

  2. 数据结构与算法--二分搜索(binary search)

    前言 之前面试准备秋招,重新翻起了<编程之美>.在第三章节看到了一道关于二分搜索的讨论,觉得有许多细节是自己之前也没怎么特别注意地方,比如二分搜索的初始条件,转化.终止条件之类的. 问题 ...

  3. 爬虫需要登陆怎么办?这份python登陆代码请收下

    模拟登陆思路 通过selenium中的webdriver控制浏览器登录目标网站,然后获取模拟登陆需要的Cookie,再利用此Cookie来达到登录的效果.本次我们使用webdriver来驱动火狐浏览器 ...

  4. Numpy学习-(2)

    我学习numpy过程的记录 1. 切片和索引 (1) 两种切片方式示例: (2) 多维数组: import numpy as np a = np.array([[1,2,3],[3,4,5],[4,5 ...

  5. Spring5:控制反转

    二.Spring IOC控制反转 1:IOC推导 >传统业务调用编程 定义一个userDao接口:UserDao package com.spring; public interface Use ...

  6. 挑战全网最幽默的Vuex系列教程:第六讲 Vuex的管理员Module(实战篇)

    写在前面 这一讲是 Vuex 基础篇的最后一讲,也是最为复杂的一讲.如果按照官方来的话,对于新手可能有点难以接受,所以想了下,决定干脆多花点时间,用一个简单的例子来讲解,顺便也复习一下之前的知识点. ...

  7. C语言如何实现继承及容器

    继承的概念 继承是面向对象软件技术当中的一个概念,与多态.封装共为面向对象的三个基本特征.继承可以使得子类具有父类的属性和方法或者重新定义,追加属性和方法. 面向对象中的重要概念就是类,在我们熟知的编 ...

  8. Asp.Net Core 3.1 的启动过程5

    前言 本文主要讲的是Asp.Net Core的启动过程,帮助大家掌握应用程序的关键配置点. 1.创建项目 1.1.用Visual Studio 2019 创建WebApi项目. 这里面可以看到有两个关 ...

  9. How to permit SSH root Login in Ubuntu 18.04

    https://www.ubuntu18.com/ssh-permitrootlogin/ SSH root login is disabled by default in Ubuntu 18.04. ...

  10. js 运动函数篇(二) (加速度运动、弹性运动、重力场运动(多方向+碰撞检测+重力加速度+能量损失运动)拖拽运动)层层深入

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS写加速度运动.弹性运动.重力场运 ...