详细介绍可以看Numpy帮助,也有很多资料,此文仅是一个简述性质的集成文章

1.简介

Numpy是Python的一个扩展包,语法和Matlab有很多相似之处。它支持高维数组和矩阵运算,也提供了许多数组和矩阵运算的函数。另外,它在数组和矩阵运算方面速度很快,效率很高。对数组的运算都可以算在每个元素上。如,A*2(A为3*3的矩阵),结果是A中的9个元素都乘2

1.1 索引与切片

数组索引一般用 [] 来实现,一维arratName[行],二维aName[行,列],三维[页,行,列],可以用冒号:代替某一维度,表示取该维度所有元素。如a[[1,2],[3,4]],a[:,1]为[2,4]

布尔型索引  布尔型数组的长度必须和被索引的轴长度一致

花式索引  利用整数数组进行索引

print a[[4, 3, 0, 6]] # 打印a[4]、a[3]、a[0]和a[6]。

切片如下: a为3*3*3矩阵  b = a[1, :,:]

1.2 复制与镜像

用.copy()方法复制数组,= 直接赋值。赋值只能产生镜像,仅是给变量增加一个名称;复制可以生成另一个变量,两个变量相互独立。

1.3 数组转置和轴对换

转置为 arrayName.T

矩阵相乘 np.dot(array1,array2)

高维轴对换 .transpose  或  .swapaxes

1.4 按条件逻辑逻辑运算

如:a=np.arange(9).reshap(3,3)     print(a>5), print(a[a>5])。第一个输出是True和False的矩阵,第二个输出6,7,8,9

因此,可以按条件选择数组元素

np.where的使用   语法:np.where(条件,表达式1,表达式2)条件为真执行表达式1,条件为假执行表达式2.

1.5 排序

.sort()   0为按列排序,1为按行排序

2.常用函数介绍

构造函数

说明

array

将输入数据(列表、元组、数组等)转换为ndarray

arange

类似于range,返回一个ndarray

ones

根据指定大小和dtype创建一个全1数组

zeros

根据指定大小和dtype创建一个全0数组

empty

创建数组,只分配内存空间不填充任何值

eye,  identity

创建单位矩阵

运算函数(一元)

说明

abs,fabs

计算绝对值,计算复数的模。对于非复数,用fabs更快

sqrt

开方

sqare

平方  相当于a**2

exp

计算各元素的e^x

log, log10, log2, log(1+x)

自然对数,底数为10,底数为2和log(1+x)

ceil

向上取整

floor

向下取整

sign

计算各元素的正负号

rint

四舍五入到整数,保留dtype

modf

将整数部分和小数部分以两个独立数组返回

cos,sin,tan

三角函数

arccos,arcsin,arctan

反三角

运算函数(二元)

说明

add

将数组中对应的元素相加

subtract

从第一个数组中减去第二个数组中的元素

multiply

元素相乘

Divide, floor_divide

相除,或向下取整除法

power

Power(A,B) 计算A^B

Max  fmax

计算最大值,fmax忽略NaN

Min   fmin

计算最小值,fmin忽略NaN

mod

求模

copysign

将第二数组中的符号复制给第一个数组元素

greater,greater_equal

less,less_equal,equal,

not_equal

执行元素级的比较,最终产生布尔型数组

Logical_and, logical_or

Logical_xor

执行元素级的真值逻辑运算,产生布尔型数组

数学和统计方法

说明

sum

对数组中全部或某轴向的元素求和,0为按列,1为按行

mean

求平均

std, var

标准差和方差

min, max

最小值和最大值

argmin,argmax

最大值和最小值的索引

cumsum

所有元素累计和

cumprod

所有元素累计积

去重、集合运算函数

说明

unique(x)

计算X中的唯一元素,并返回有序结果

intersect1d(x,y)

计算x和y中的公共元素,并返回有序结果

union1d(x,y)

计算x和y的并集,返回有序结果

in1d(x,y)

得到一个描述x的元素是否包含于y的布尔型数组

setdiff1d(x,y)

集合的差,即元素在X中且不在Y中

setxor1d(x,y)

集合的异或,即存在一个数组中,另外一个数组中没有

常用的np.linalg函数

说明

diag

以一位数组的形式返回方阵的对角线

dot

矩阵乘法

trace

计算对角线元素的和

det

计算矩阵行列式

eig

计算方阵的特征值和特征向量

inv

计算方阵的逆

pinv

计算矩阵的Moore-Penrose伪逆

qr

计算QR分解

svd

计算奇异值分解

solve

解线性方程Ax=b,A为一个方阵

lstsq

计算Ax=b的最小二乘解

随机数生成 函数

说明

seed

确定随机数生成器的种子

permutation

返回一个序列的随机排列

shuffle

对一个序列随机乱序

rand

产生均匀分布的样本值

randint

从给定的上下限范围内随机选取整数

randn

产生正态分布(平均值为0,标准差为1)

binomial

产生二项分布的样本值

normal

产生正态(高斯)分布的样本值

beta

产生Beta分布的样本值

chisquare

产生卡方分布的样本值

gamma

产生Gramma分布的样本值

uniform

产生在[0,1]中均匀分布的样本值

Numpy包简单介绍的更多相关文章

  1. python numpy 模块简单介绍

    用python自带的list去处理数组效率很低, numpy就诞生了, 它提供了ndarry对象,N-dimensional object, 是存储单一数据类型的多维数组,即所有的元素都是同一种类型. ...

  2. Java学习记录-Jdk包简单介绍

    java.applet Java语言编写的一些小应用程序 java.awt AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交 ...

  3. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  4. 关于如何在其他包中写controller和简单介绍@SpringBootApplication

    本文参考博客:https://blog.csdn.net/u013473691/article/details/52353923 关于@Configuration和@Bean参考博客:https:// ...

  5. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  6. python之pandas简单介绍及使用(一)

    python之pandas简单介绍及使用(一) 一. Pandas简介1.Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据 ...

  7. Python常用的库简单介绍一下

    Python常用的库简单介绍一下fuzzywuzzy ,字符串模糊匹配. esmre ,正则表达式的加速器. colorama 主要用来给文本添加各种颜色,并且非常简单易用. Prettytable ...

  8. Linux的简单介绍和常用命令的介绍

    Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...

  9. iOS-iOS开发简单介绍

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

随机推荐

  1. C++ 引用本质的详解

    //引用本质的理解① #include<iostream> using namespace std; int GetA(){ ; return a; } int & GetB(){ ...

  2. 条件随机场(Conditional random field,CRF)

  3. jQuery补充,基于jQuery的bxslider轮播器插件

    基于jQuery的bxslider轮播器插件 html <!DOCTYPE html> <html lang="zh-cn"> <head> & ...

  4. python爬虫<urlopen error [Errno 10061] >

    在网上看了十几篇文章,都是说的是IE的代理设置,具体是: Tools->Internet Options->Connections->Lan Settings 将代理服务器的小勾勾去 ...

  5. Myeclipse创建Maven项目

    1.右击new创建一个Maven Project: 点击Next 继续Next Finish 2.项目成功创建后,项目目录主要有:主代码目录.主资源目录.测试代码目录.测试资源目录.输出目录(代码编译 ...

  6. oracle 存储过程返回结果集

    好久没上来了, 难道今天工作时间稍有空闲, 研究了一下oracle存储过程返回结果集. 配合oracle临时表, 使用存储过程来返回结果集的数据读取方式可以解决海量数据表与其他表的连接问题. 在存储过 ...

  7. 【BZOJ4318】OSU! 期望DP

    [BZOJ4318]OSU! Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1 ...

  8. 不想分页怎么办??-->页面数据的滚动加载

    在前几天的一次前台数据展示的时候 为了更好的用户的体验 就想着做一个数据的滚动加载功能 于是简单的查询了网上的实现方式 基本都是在页面加载的时候绑定scroll事件 然后判断页面触底的时候 进行aja ...

  9. FormsAuthentication 使用指南

    配置安全鉴别 鉴别是指鉴定来访用户是否合法的过程.ASP.NET Framework支持三种鉴别类型: Windows鉴别: NET Passport鉴别: Forms鉴别. 对于某一特定的应用程序, ...

  10. windows accounts

    Some built-in groups are used for management purposes. You control which > users belong to these ...