python numpy包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python numpy包相关的知识,希望对你有一定的参考价值。

在numpy包中我们可以用数组来表示向量,矩阵和高阶数据结构

首先导入numpy包:

from numpy import*

 

初始化numpy数组有多种方式,比如说

1.python列表或元祖

2.使用arrange,linspace函数

3.从文件中读取数据

 

例:列表生成numpy数组:

v=array([1,2,3,4])

M=array([[1,2],[3,4]])

v和M对象都是numpy模块提供的ndarray类型

v,M区别在于他们的维度不同

可以通过ndarray.shape获得他们的维度

ndarray.size获得他们的元素数量

例如:M.shape   M.size

也可以用shape(M)和size(M)

那么为什么不使用list呢?技术分享

可以显示的定义元素类型通过在创建数组时使用dtype关键字

 

使用数组生成函数

x=arange(0,10,1) 0到10间距1

linspace(0,10,25) 0到10一共25个数据

x,y=mgrid[0:5,0:5]

技术分享

生成随机数组:

from numpy import random

random.rand(5,5)生成5*5矩阵,随机值在0到1之间

random.randn(5,5)随机值

技术分享

zeros((3,3))  3*3的0矩阵

ones((3,3)) 3*3都是1的矩阵

 

文件I/O创建数组:

csv是一种常用的数据格式化文件类型,使用numpy.genfromtxt函数读取

使用numpy.savetxt可以将数组存储到csv文件中

M=random.rand(3,3)

savetxt("random-maxtrix.csv",M)

 

nnmpy原生文件类型:

用numpy.save和numpy.load保存和读取

save("Numpy.npy",M)

load("Numpy.npy")

操作数组:

使用方括号:

M[1]

M[1,1]

如果是n维数组,检索时省略一个索引值会返回一整行

M[1]

使用:能达到同样效果。

M[1,:]一行   M[:,1]一列

同样可以使用索引值进行赋值

A[1:3]会返回第1,2号元素---------索引这块其实和list差不多。

负值索引从数组尾部开始计算。M[-1]为数组倒数第一个

索引切片在二维数组里也是一样的。

 

numpy函数

where函数能将索引掩码转换成索引位置

diag函数提取出数组对角线

take函数与高级索引用法相似

技术分享

choose选取多个数组的部分组成新的数组

我们对矩阵间进行加减乘除时,默认行为是逐项乘的

使用dot函数进行矩阵与矩阵,向量的乘法

 

将数组对象映射到matrix类型

以上是关于python numpy包的主要内容,如果未能解决你的问题,请参考以下文章

Python本地安装numpy包

Python 3.4 和 2.7:无法为 python 3.4 安装 numpy 包

python---numpy

将 AWS Glue Python 与 NumPy 和 Pandas Python 包一起使用

带有 SKLEARN、PANDAS 和 NUMPY 问题的 Python 部署包?

Python 数据分析Numpy模块