学习笔记之NumPy】的更多相关文章

NumPy — NumPy http://www.numpy.org/ NumPy is the fundamental package for scientific computing with Python. NumPy - Wikipedia https://en.wikipedia.org/wiki/NumPy NumPy (pronounced /ˈnʌmpaɪ/ (NUM-py) or sometimes /ˈnʌmpi/[1][2] (NUM-pee)) is a library…
1. 读写 txt 文件 a = list(range(0, 100)) a = np.array(a) # a.dtype = np.int64 np.savetxt("filename.txt", a) b = np.loadtxt("filename.txt") # b.dtype = np.float64 savetxt 默认保存为 float64 格式的,注意保存和读取时 dtype 要一致,否则读出的数据可能会乱码. numpy.loadtxt nump…
1. 初识数组 import numpy as np a = np.arange(15) a = a.reshape(3, 5) print(a.ndim, a.shape, a.dtype, a.size, a.itemsize) # 2 (3, 5) int64 15 8 ndim,数组的维度数,二维数组就是 2 shape,数组在各个维度上的长度,用元组表示 dtype,数组中元素的数据类型,比如 int32, float64 等 size,数组中所有元素的总数 itemsize,数组中每…
Matplotlib 是 Python 的绘图库. 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案. 它也可以和图形工具包一起使用,如 PyQt 和 wxPython. Windows 系统安装 Matplotlib 进入到 cmd 窗口下,执行以下命令: python -m pip install -U pip setuptools python -m pip install matplotlib Linux 系统安装 Matplotlib 可以使用 Linux 包…
Numpy 可以读写磁盘上的文本数据或二进制数据. NumPy 为 ndarray 对象引入了一个简单的文件格式:npy. npy 文件用于存储重建 ndarray 所需的数据.图形.dtype 和其他信息. 常用的 IO 函数有: load() 和 save() 函数是读写文件数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 .npy 的文件中. savze() 函数用于将多个数组写入文件,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 .npz 的文…
import numpy.matlib import numpy as np a = np.array([[1,2],[3,4]]) b = np.array([[11,12],[13,14]]) print(np.dot(a,b)) numpy.vdot() 函数是两个向量的点积. 如果第一个参数是复数,那么它的共轭复数会用于计算. 如果参数是多维数组,它会被展开. import numpy as np a = np.array([[1,2],[3,4]]) b = np.array([[11…
import numpy.matlib import numpy as np print (np.matlib.empty((2,2))) # 填充为随机数据 numpy.matlib.zeros() 函数创建一个以 0 填充的矩阵. import numpy.matlib import numpy as np print (np.matlib.zeros((2,2))) numpy.matlib.ones()函数创建一个以 1 填充的矩阵. import numpy.matlib import…
副本是一个数据的完整的拷贝,如果我们对副本进行修改,它不会影响到原始数据,物理内存不在同一位置. 视图是数据的一个别称或引用,通过该别称或引用亦便可访问.操作原有数据,但原有数据不会产生拷贝.如果我们对视图进行修改,它会影响到原始数据,物理内存在同一位置. 视图一般发生在: 1.numpy 的切片操作返回原数据的视图. 2.调用 ndarray 的 view() 函数产生一个视图. 副本一般发生在: Python 序列的切片操作,调用deepCopy()函数. 调用 ndarray 的 copy…
大端模式:指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放 小端模式:指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低. 例如在 C 语言中,一个类型为 int 的变量 x 地址为 0x100,那么其对应地址表达式&x的值为 0x100.且x的四个字节将被存储在存储器的 0x1…
numpy.sort() 函数返回输入数组的排序副本.函数格式如下: numpy.sort(a, axis, kind, order) 参数说明: a: 要排序的数组 axis: 沿着它排序数组的轴,如果没有数组会被展开,沿着最后的轴排序, axis=0 按列排序,axis=1 按行排序 kind: 默认为'quicksort'(快速排序) order: 如果数组包含字段,则是要排序的字段 import numpy as np a = np.array([[3,7],[9,1]]) print…
NumPy 提供了很多统计函数,用于从数组中查找最小元素,最大元素,百分位标准差和方差等. numpy.amin() 用于计算数组中的元素沿指定轴的最小值. numpy.amax() 用于计算数组中的元素沿指定轴的最大值. import numpy as np a = np.array([[3,7,5],[8,4,3],[2,4,9]]) print ('我们的数组是:') print (a) print ('\n') print ('调用 amin() 函数:') print (np.amin…
NumPy 算术函数包含简单的加减乘除: add(),subtract(),multiply() 和 divide(). 需要注意的是数组必须具有相同的形状或符合数组广播规则. import numpy as np a = np.arange(9, dtype = np.float_).reshape(3,3) print ('第一个数组:') print (a) print ('\n') print ('第二个数组:') b = np.array([10,10,10]) print (b) p…
NumPy 包含大量的各种数学运算的函数,包括三角函数,算术运算的函数,复数处理函数等. NumPy 提供了标准的三角函数:sin().cos().tan(). import numpy as np a = np.array([0,30,45,60,90]) print ('不同角度的正弦值:') # 通过乘 pi/180 转化为弧度 print (np.sin(a*np.pi/180)) print ('\n') print ('数组中角度的余弦值:') print (np.cos(a*np.…
这些函数在字符数组类(numpy.char)中定义. add() 对两个数组的逐个字符串元素进行连接 multiply() 返回按元素多重连接后的字符串 center() 居中字符串 capitalize() 将字符串第一个字母转换为大写 title() 将字符串的每个单词的第一个字母转换为大写 lower() 数组元素转换为小写 upper() 数组元素转换为大写 split() 指定分隔符对字符串进行分割,并返回数组列表 splitlines() 返回元素中的行列表,以换行符分割 strip…
bitwise_and() 函数对数组中整数的二进制形式执行位与运算. import numpy as np print ('13 和 17 的二进制形式:') a,b = 13,17 print (bin(a), bin(b)) print ('\n') print ('13 和 17 的位与:') print (np.bitwise_and(13, 17)) bitwise_or()函数对数组中整数的二进制形式执行位或运算. import numpy as np a,b = 13,17 pr…
import numpy as np a = np.arange(8) print ('原始数组:') print (a) print ('\n') b = a.reshape(4,2) print ('修改后的数组:') print (b) numpy.ndarray.flat 是一个数组元素迭代器 import numpy as np a = np.arange(9).reshape(3,3) print ('原始数组:') for row in a: print (row) #对数组中每个…
import numpy as np a = np.arange(6).reshape(2,3) print ('原始数组是:') print (a) print ('\n') print ('迭代输出元素:') for x in np.nditer(a): print (x, end=", " ) print ('\n') import numpy as np a = np.arange(6).reshape(2,3) for x in np.nditer(a.T): print (…
广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式, 对数组的算术运算通常在相应的元素上进行. 如果两个数组 a 和 b 形状相同,即满足 a.shape == b.shape,那么 a*b 的结果就是 a 与 b 数组对应位相乘.这要求维数相同,且各维度的长度相同. import numpy as np a = np.array([1,2,3,4]) b = np.array([10,20,30,40]) c = a * b print (c) 当运算中…
import numpy as np x = np.array([[1, 2], [3, 4], [5, 6]]) y = x[[0,1,2], [0,1,0]] print (y) import numpy as np x = np.array([[ 0, 1, 2],[ 3, 4, 5],[ 6, 7, 8],[ 9, 10, 11]]) print ('我们的数组是:' ) print (x) print ('\n') rows = np.array([[0,0],[3,3]]) cols…
ndarray 数组可以基于 0 - n 的下标进行索引,切片对象可以通过内置的 slice 函数,并设置 start, stop 及 step 参数进行,从原数组中切割出一个新数组. import numpy as np a = np.arange(10) s = slice(2,7,2) # 从索引 2 开始到索引 7 停止,间隔为2 print (a[s]) import numpy as np a = np.arange(10) b = a[2:7:2] # 从索引 2 开始到索引 7…
import numpy as np x = np.arange(5) print (x) import numpy as np # 设置了 dtype x = np.arange(5, dtype = float) print (x) import numpy as np x = np.arange(10,20,2) print (x) import numpy as np a = np.linspace(1,10,10) print(a) import numpy as np a = np.…
import numpy as np x = [1,2,3] a = np.asarray(x) print (a) import numpy as np x = (1,2,3) a = np.asarray(x) print (a) import numpy as np x = [(1,2,3),(4,5)] a = np.asarray(x) print (a) import numpy as np x = [1,2,3] a = np.asarray(x, dtype = float) p…
import numpy as np x = np.empty([3,2], dtype = int) print (x) import numpy as np # 默认为浮点数 x = np.zeros(5) print(x) # 设置类型为整数 y = np.zeros((5,), dtype = np.int) print(y) # 自定义类型 z = np.zeros((2,2), dtype = [('x', 'i4'), ('y', 'i4')]) print(z) import n…
NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions).比如说,二维数组相当于是两个一维数组,其中第一个一维数组中每个元素又是一个一维数组.所以一维数组就是 NumPy 中的轴(axis),第一个轴相当于是底层数组,第二个轴是底层数组里的数组.而轴的数量——秩,就是数组的维数. axis=0,表示沿着第 0 轴进行操作,即对每一列进行…
下表列举了常用 NumPy 基本类型. 名称 描述 bool_ 布尔型数据类型(True 或者 False) int_ 默认的整数类型(类似于 C 语言中的 long,int32 或 int64) intc 与 C 的 int 类型一样,一般是 int32 或 int 64 intp 用于索引的整数类型(类似于 C 的 ssize_t,一般情况下仍然是 int32 或 int64) int8 字节(-128 to 127) int16 整数(-32768 to 32767) int32 整数(-…
NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引. ndarray 对象是用于存放同类型元素的多维数组. ndarray 中的每个元素在内存中都有相同存储大小的区域. ndarray 内部由以下内容组成: 一个指向数据(内存或内存映射文件中的一块数据)的指针. 数据类型或 dtype,描述在数组中的固定大小值的格子. 一个表示数组形状(shape)的元组,表示各维度大小的元组. 一个跨度元组(stride),其中…
1. 实现两个数组相加,在数据量特别大的时候 产生数组: (1)  从列表产生数组:a=[0,1,2,3] a=np.array(1) a (2)  从列表传入 a=np.array([1,2,3,4]) (3)  生成全0的数组 np.zeros(5) (4)  生成全1的数组 np.ones(5,dtype=’bool’)àdtype可以用来指定数据类型 (5)  可以使用fill方法将数组设为指定值 (6)  生成整数序列 a=np.arange(1,10)从1开始生成数据,一直到9 (7…
numpy 学习笔记 导入 numpy 包 import numpy as np 声明 ndarray 的几种方法 方法一,从list中创建 l = [[1,2,3], [4,5,6], [7,8,9]] matrix = np.array(l) print(matrix) [[1 2 3] [4 5 6] [7 8 9]] 方法二,指定维度,不赋值 matrix = np.ndarray(shape=(3,4)) print(matrix) [[9.66308774e-312 2.470328…
Data analysis - Wikipedia https://en.wikipedia.org/wiki/Data_analysis Data analysis is a process of inspecting, cleansing, transforming, and modeling data with the goal of discovering useful information, informing conclusions, and supporting decision…
NumPy学习笔记 三 股票价格 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分析>第四版(华东师范大学数学系).<概率论与数理统计>(陈希孺,中科大出版).<概率论与数理统计>第二版(茆诗松.程依明等编).<组合最优化:理论与方法>(现代数学译丛23).笔记三主要操作股票价格数据. 股票价格数据通常包括开盘价.最高价.最低价和收盘价.…