Numpy 常用函数

numpy 数据类型

数据类型 描述
bool_ 存储为一个字节的布尔值(True, False)
intc 相当于C中的int类型, 通常为int32, 或者int64
intp 用于索引的整数, 相当于C中的size_t类型, 通常为int32,或int64
int8 字节(-128~127)
int16 16位整数(-32768~32767)
int32 32 位整数(-2147483648 ~ 2147483647)
int64 64 位整数(-9223372036854775808 ~ 9223372036854775807)
uint8 8 位无符号整数(0 ~ 255)
uint16 16 位无符号整数(0 ~ 65535)
uint32 32 位无符号整数(0 ~ 4294967295)
uint64 64 位无符号整数(0 ~ 18446744073709551615)
float_ float64的简写
float16 半精度浮点:符号位,5 位指数,10 位尾数
float32 单精度浮点:符号位,8 位指数,23 位尾数
float64 双精度浮点:符号位,11 位指数,52 位尾数
complex_ complex128的简写
complex64 复数,由两个 32 位浮点表示(实部和虚部)
complex128 复数,由两个 64 位浮点表示(实部和虚部)

numpy 数组创建函数

numpy.empty(shape,):

创建指定类型, 指定形状的数组

numpy.zeros(shape,):

创建指定形状, 指定类型, 以0填充的数组

numpy.ones(shape,):

返回特定大小,以 1 填充的新数组

numpy.fromiter(iterable,):

从任何可迭代对象构建一个ndarray对象

numpy.arange(start, stop, step,):

创建指定起始值,终止值,步长和类型的数组

numpy.linspace(start, stop,num,):

在指定范围内创建N个间隔均匀的数值, 并以数组形式返回

numpy.logscale(start, stop, num,):

numpy.linspace()类似, 不过这里的参数start和stop表示的是10的幂指数

numpy 数组操作函数

numpy.concatenate((a1,a2,), axis):

在指定坐标轴方向上, 连接多个数组

numpy.hstack((a1,a2,)):

在水平方向上叠加多个数组

numpy.vstack((a1,a2,)):

在竖直方向上叠加多个数组

numpy.split(ary,n,axis):

在指定坐标轴方向上将数组平均分成n份

numpy.hsplit(ary,N):

将数组ary水平分割为N份

numpy.vsplit(ary,N):

将数组ary竖直分割为N份

numpy.append(arr,values,axis):

将values在axis方向上添加到arr

numpy.unique(arr,):

返回arr中的去重数组

np.tile(a,reps):

对数组a行进reps次数的复制

# input
import numpy as np

a=np.arange(4).reshape(2,2)
a=np.tile(a,(2,3))
print(a)

# output
[[0 1 0 1 0 1]
 [2 3 2 3 2 3]
 [0 1 0 1 0 1]
 [2 3 2 3 2 3]]

numpy 位操作函数

np.binary_repr(num, width=None):

将一个整数转换为二进制表示

numpy.bitwise_and(a,b):

对数组元素执行位与操作

numpy.bitwise_or():

对数组元素执行位或操作

numpy.invert(a,):

计算位非

numpy.left_shift(a,n):

向左移动二进制表示的n位

numpy.right_shift(a,n):

向右移动二进制表示的n位

numpy 字符串操作函数

numpy 字符串函数是对Python字符串函数的包装

numpy.char.add():

函数执行按元素的字符串连接

numpy.char.multiply():

执行多重连接

numpy.char.center():

此函数返回所需宽度的数组,以便输入字符串位于中心,并使用fillchar在左侧和右侧进行填充

numpy.char.capitalize():

返回字符串的副本,其中第一个字母大写

numpy.char.title():

返回输入字符串的按元素标题转换版本,其中每个单词的首字母都大写

numpy.char.lower():

返回一个数组,其元素转换为小写

numpy.char.upper():

返回一个数组,其元素转换为大写

numpy.char.split():

返回输入字符串中的单词列表, 无法使用正则表达式进行模式匹配

numpy.char.splitlines():

返回数组中元素的单词列表,以换行符分割

numpy.char.strip():

返回数组的副本,其中元素移除了开头或结尾处的特定字符

numpy.char.join():

返回一个字符串,其中单个字符由特定的分隔符连接

numpy.char.replace():

返回字符串副本,其中所有字符序列的出现位置都被另一个给定的字符序列取代

numpy.char.decode():

对数组中的字符串使用特定编码

numpy.char.encode():

对数组中的每个元素使用某种编码方式解码

numpy 数学函数

numpy.sin(), numpy.cos(), numpy.tan():

输入需要是弧度值

numpy.arcsin(), numpy.arccos(), numpy.arctan():

返回值是弧度值

numpy.degrees():

可以将弧度值转化为角度值

numpy.around(a,decimal):

将a四舍五入到要求的精度

numpy.floor(a,):

返回不大于输入参数的最大整数

numpy.ceil(a,):

返回不小于出入参数的最小整数

numpy.reciprocal(a,):

返回参数逐元素的倒数

numpy.power(a,b):

将第一个输入数组中的元素作为底数,计算它与第二个输入数组中相应元素的幂

numpy.mod(a,b):

返回输入数组中相应元素的除法余数

numpy 统计函数

numpy.max(a,axis,),numpy.min(a,axis,):

返回a在axis方向上的最大/小值

numpy.argmax(a,axis,),numpy.argmin(a,axis,):

返回a在axis方向上的最大/小值的索引

numpy.ptp(a,axis,):

返回沿轴的值的范围(最大值 - 最小值)

numpy.percentile(a, q, axis):

返回数组a在axis方向上q分位数值

numpy.median(a,axis,):

返回数组a在axis方向上的中值

numpy.mean(a,axis,):

返回数组在axis方向上各元素的算术平均值

numpy.average(a,axis,weights):

返回数组在axis方向上的加权平均数

numpy.std(a,axis,):

返回数组在axis方向上的标准差

numpy.var(a,axis,):

返回数组在axis方向上的方差

numpy 排序, 搜索和计数函数

numpy 提供的排序算法

种类 速度 最坏情况 工作空间 稳定性
quicksort(快速排序) 1 O(n^2) 0
mergersort(归并排序) 2 O(n*log(n)) ~n/2
heapsort(堆排序) 3 O(n*log(n)) 0

numpy.sort(a,axis,):

在指定坐标轴上对数组a进行升序排列

numpy.argsort(a,axis,):

在指定坐标轴上进行升序排列, 返回各元素在排序之后的索引

numpy.max(a,axis,), numpy.min(a,axis,):

返回在指定坐标轴方向上的最大/小值

numpy.argmax(a,axis,), numpy.argmin(a,axis,):

返回在指定坐标轴方向上的最大/小值的索引

numpy.nonzero(a,):

返回数组a中的非零元素的索引

numpy.where(condition,x,y):

当condition为True时, 返回x; 当condition为False时, 返回y

numpy 线性代数函数

numpy.dot():

返回两个数组的点积

numpy.vdot():

返回两个向量的点积

numpy.inner():

返回一维数组的向量内积

numpy.matmul():

返回两个数组的矩阵乘积

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,651评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,468评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,931评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,218评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,234评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,198评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,084评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,926评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,341评论 1 311
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,563评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,731评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,430评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,036评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,676评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,829评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,743评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,629评论 2 354