美文网首页
numpy库常见用法总结

numpy库常见用法总结

作者: 文子_7bfb | 来源:发表于2019-02-18 23:41 被阅读0次

学习python也有几个月了,总结下numpy库的用法,方便以后查找使用。

numpy库主要作于科学计算,是一个多维数组对象,称为ndarray,是scipy\pandas等库的基础。

1、创建数组:array()函数,括号内可以是列表、元祖等。

import numpy as np

1)ar1 = np.array([1,2,3,4,5])    # list

2) ar2 = np.array((1,2,3,4,5))   # tuple

2特殊数组的创建

1)np.arange()     #类似range(),在给定间隔内返回均匀间隔的值。

例:np.arange(10)        

结果: [0 1 2 3 4 5 6 7 8 9 10]

2) np.linspace(start, stop, num=50,enpoint=True,retstep=False,dtype=None)    # 返回在间隔[start,stop]上计算的num个均匀间隔的样本。

# endpoint:如果为真,则停止是最后一个样本。否则,不包括在内。默认值为True。

# retstep:如果为真,返回(样本,步骤),其中步长是样本之间的间距 → 输出为一个包含2个元素的元祖,第一个元素为array,第二个为步长实际值

例1:np.linspace(2,3,num=5)

结果:[2. 2.25 2.5 2.75 3.]

3) np.zeros()/zeros_like()/ones()/ones_like()

np.zeros()  # 返回给定形状的新数组,用零填充;

np.zeros_like(arr)    #返回具有与给定数组arr相同的形状和类型的零数组

np.ones()    # 返回给定形状的新数组,用1填充;

np.ones_like(arr)    ##返回具有与给定数组arr相同的形状和类型的用1填充的数组

4)np.eye()  # 创建一个给定的单位数据

3、常用的属性

ar.ndim   # 数组维度

ar.shape    # 各维度的尺寸

ar.size    # 元素的个数

ar.dtype    # 元素的类型

ar.itemsize     # 每个元素的大小,以字节为单位 ,每个元素占4个字节 

4、维度变换

1)arr.reshape(n,m)   # 将arr变为n*m的数组,要保证改变后数组中数据不变

2)np.resize(arr,(n,m) )   # 将arr变为n*m的数组,更改后的数组中的数据可以与原数组中数据不同。如果新数据中可容纳的数据个数少于原数据,则新数据保留原数据中按行列顺序排列的n*m个数据;如果多于,则会继续按原数组中数据顺序进行填充。

arr =  np.arange(10)

例1:arr1 = arr.resize(2,4)

结果:

[[0 1 2 3]

[4 5 6 7]]

例2:arr1 = arr.resize(2,6)

结果:

[[0 1 2 3 4 5]

[6 7 8 9 0 1]]

3)arr.T  # 对数组arr进行转置

4、数组的复制

1) arr1 = arr     # 直接用赋值的方式进行复制,此时arr1与arr指向内存中相同的地址,所以当arr中的元素发生改变时,arr1中的元素也会一起改变。

2)arr1 = arr.copy()   # 使用copy()方法进行复制,python在内存空间中重新开辟了一块属于arr1的内存,所以此时arr改变时,arr1不会改变。

5、数组类型转换:.astype()

arr.astype(np.dtype)   # dtype可以是int32\float等

6、数组运算

1)求平均值:arr.mean(axis=0/1)    # 如不指定axis则求整体平均数,axis=0为对列求平均数,axis=1为对行求平均数

2)求最小值:arr.min(axis=0/1)

3)求最大值:  arr.max(axis=0/1)

4)求标准差:arr.std(axis=0/1)

5)求方差:arr.var(axis=0/1)

5)求和: arr.sum(axis=0/1)

7、numpy随机数:np.random

1) np.random.normal(size=(n,m))    #生成一个标准正太分布的n*m样本值

2)np.random.rand()    # 生成一个[0,1)之间的随机浮点数或N维浮点数组 —— 均匀分布

a = np.random.rand()    # 生成一个随机浮点数

b = np.random.rand(4)  # 生成形状为4的一维数组

c = np.random.rand(2,3) #生成一个2*3的二维数组,注意这里不是((2,3))

3)np.random.randn():生成一个浮点数或N维浮点数组 —— 正态分布, 其参数与randn用法相同

4)np.random.randint(low, high=None, size=None, dtype='l'):生成一个整数或N维整数数组,若high不为None时,取[low,high)之间随机整数,否则取值[0,low)之间随机整数,且high必须大于low,dtype参数:只能是int类型 .

np.random.randint(2) : low=2,生成1个[0,2)之间随机整数 

np.random.randint(2,size=5):low=2,size=5 ,生成5个[0,2)之间随机整数

np.random.randint(2,6,size=5):low=2,high=6,size=5,生成5个[2,6)之间随机整数

8、数据的输入输出

1)存储

存储数组数据 .npy文件:np.save('path.npy', arr)

存储为文本txt文件:np.savetxt('path.txt', arr,delimiter=' ')

2) 读取

读取数组数据 .npy文件:np.load('path.npy')

读取文本txt文件:np.loadtxt(“path.txt",delimiter=' ')

相关文章

  • numpy库常见用法总结

    学习python也有几个月了,总结下numpy库的用法,方便以后查找使用。 numpy库主要作于科学计算,是一个多...

  • 2.2-Numpy数组基本用法

    NumPy数组基本用法 1.Numpy是Python科学计算库,用于快速处理任意维度的数组。2.NumPy提供一个...

  • numpy-n1

    [TOC] 导入numpy库 numpy类型 ndarray常见属性 另一个经常用到的是reshape()方法。该...

  • np.tile、np.meshgrid、np.where学习总结

    最近看代码的时候又碰到了几个关于numpy的用法,在这里总结记录一下,尽可能简洁,我的上一篇关于numpy的用法是...

  • Chapter 01 python入门

    略去基础的python语法,第一章主要介绍了numpy和matplotlib这两个常用库的基本用法 生成numpy...

  • python numpy库中省略号...的一些用法

    python numpy库中省略号...的一些用法 - 清风不识字12138的博客 - CSDN博客

  • Moment.js常见用法总结

    Moment.js常见用法总结 Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时...

  • Numpy 学习总结+Jupyter 的快捷使用

    总结分为三部分:1、numpy 常见使用方法2、Matplotlib 常见绘图3、Jupyter Notebook...

  • numpy

    一直没有总结过,记录一下numpy的基本用法: 1. 生成一个简单的数组,list 转换为numpy: 二维& ....

  • Python数据分析特训课笔记

    python数据分析班 笔记NUMPY用法 1.numpy的构建 除了.ones和eye用法还有其他的用法 num...

网友评论

      本文标题:numpy库常见用法总结

      本文链接:https://www.haomeiwen.com/subject/gyfzeqtx.html