NumPy参考 —— NumPy v1.15手册汉化

NumPy参考

数组创建

零 和 一

empty(shape[, dtype, order]):返回给定形状和类型的新数组,而不初始化条目

empty_like(prototype[, dtype, order, subok]):返回一个与给定数组具有相同形状和类型的新数组.

eye(N[, M, k, dtype, order]):返回一个二维数组,其中对角线为1,零点为零.

identity(n[, dtype]):返回标识数组.

ones(shape[, dtype, order]):返回一个给定形状和类型的新数组,用一填充

ones_like(a[, dtype, order, subok]):返回与给定数组具有相同形状和类型的数组.

zeros(shape[, dtype, order]):返回给定形状和类型的新数组,用零填充

zeros_like(a[, dtype, order, subok]):返回与给定数组具有相同形状和类型的零数组

full(shape, fill_value[, dtype, order]):返回给定形状和类型的新数组,填充fill_value

full_like(a, fill_value[, dtype, order, subok]):返回与给定数组具有相同形状和类型的完整数组.

现有数据来源

array(object[, dtype, copy, order, subok, ndmin]):创建一个数组.

asarray(a[, dtype, order]):将输入转换为数组.

asanyarray(a[, dtype, order]):将输入转换为ndarray,但通过ndarray子类.

ascontiguousarray(a[, dtype]):在内存中返回一个连续的数组(C顺序).

asmatrix(data[, dtype]):将输入解释为矩阵.

copy(a[, order]):返回给定对象的数组副本.

frombuffer(buffer[, dtype, count, offset]):将缓冲区解释为一维数组.

fromfile(file[, dtype, count, sep]):根据文本或二进制文件中的数据构造数组.

fromfunction(function, shape, **kwargs):通过在每个坐标上执行函数来构造数组

fromiter(iterable, dtype[, count]):从可迭代对象创建新的1维数组.

fromstring(string[, dtype, count, sep]):从字符串中的文本数据初始化的新1-D数组.

loadtxt(fname[, dtype, comments, delimiter, …]):从文本文件加载数据.

创建记录数组 (numpy.rec)

numpy.rec是首选的别名 numpy.core.records

core.records.array(obj[, dtype, shape, …]):从各种各样的对象构造记录数组.

core.records.fromarrays(arrayList[, dtype, …]):从(平面)数组列表创建一个记录数组

core.records.fromrecords(recList[, dtype, …]):从文本形式的记录列表中创建一个重新排列

core.records.fromstring(datastring[, dtype, …]):从包含在中的二进制数据创建(只读)记录数组

core.records.fromfile(fd[, dtype, shape, …]):从二进制文件数据创建数组

创建字符数组 (numpy.char)

numpy.char是首选的别名 numpy.core.defchararray

core.defchararray.array(obj[, itemsize, …]):创建一个chararray

core.defchararray.asarray(obj[, itemsize, …]):将输入转换为a chararray,仅在必要时复制数据.

数值范围

arange([start,] stop[, step,][, dtype]):在给定间隔内返回均匀间隔的值.

linspace(start, stop[, num, endpoint, …]):在指定的间隔内返回均匀间隔的数字.

logspace(start, stop[, num, endpoint, base, …]):返回在对数刻度上均匀间隔的数字.

geomspace(start, stop[, num, endpoint, dtype]):返回在对数刻度上均匀间隔的数字(几何级数).

meshgrid(*xi, **kwargs):从坐标向量返回坐标矩阵.

mgridnd_grid实例,它返回一个密集的多维“meshgrid”

ogridnd_grid实例,它返回一个开放的多维“meshgrid”

构建矩阵

diag(v[, k]):提取对角线或构造对角线阵列..

diagflat(v[, k]):使用展平输入创建二维数组作为对角线.

tri(N[, M, k, dtype]):一个数组,其中包含给定对角线和低于给定对角线的数字,其他地方为零.

tril(m[, k]):数组的下三角形.

triu(m[, k]):数组的上三角形.

vander(x[, N, increasing]):生成Vandermonde矩阵.

矩阵类型

mat(data[, dtype]):将输入解释为矩阵.

bmat(obj[, ldict, gdict]):从字符串,嵌套序列或数组构建矩阵对象.

数组操作

基本操作

copyto(dst, src[, casting, where]):将值从一个数组复制到另一个数组,并根据需要进行广播.

改变数组形状

reshape(a, newshape[, order]):为数组提供新形状而不更改其数据.

ravel(a[, order]):返回一个连续的扁平数组.

ndarray.flat:数组上的一维迭代器.

ndarray.flatten([order]) :将折叠的数组的副本返回到一个维度 .

类似转置的操作

moveaxis(a, source, destination):将阵列的轴移动到新位置.

rollaxis(a, axis[, start]):向后滚动指定的轴,直到它位于给定位置

swapaxes(a, axis1, axis2):交换阵列的两个轴

ndarray.T:与self.transpose()相同,只是如果self.ndim <2则返回self

transpose(a[, axes]):转置数组的维度.

更改维数

atleast_1d(*arys):将输入转换为至少具有一个维度的数组.

atleast_2d(*arys):将输入视为具有至少两个维度的数组.

atleast_3d(*arys):将输入视为具有至少三维的数组.

broadcast:制作一个模仿广播的对象.

broadcast_to(array, shape[, subok]):将数组广播到新形状.

broadcast_arrays(*args, **kwargs):相互广播任意数量的数组.

expand_dims(a, axis):展开数组的形状.

squeeze(a[, axis]):从数组的形状中删除一维条目.

改变数组的种类

asarray(a[, dtype, order]):将输入转换为数组.

asanyarray(a[, dtype, order]):将输入转换为ndarray,但通过ndarray子类.

asmatrix(data[, dtype]):将输入解释为矩阵.

asfarray(a[, dtype]):返回转换为float类型的数组.

asfortranarray(a[, dtype]):返回在内存中以Fortran顺序布局的数组.

ascontiguousarray(a[, dtype]):在内存中返回一个连续的数组(C顺序).

asarray_chkfinite(a[, dtype, order]):将输入转换为数组,检查NaN或Infs.

asscalar(a):将大小为1的数组转换为标量等效数组.

require(a[, dtype, requirements]):返回满足要求的提供类型的ndarray.

连接数组

concatenate((a1, a2, …)[, axis, out]):沿现有轴加入一系列数组.

stack(arrays[, axis, out]):沿新轴加入一系列数组.

column_stack(tup):将1-D阵列作为列堆叠成2-D阵列.

dstack(tup):按顺序深度堆叠阵列(沿第三轴).

hstack(tup):按顺序堆叠数组(列式).

vstack(tup):垂直堆叠数组(行方式).

block(arrays):从嵌套的块列表中组装nd数组.

拆分数组

split(ary, indices_or_sections[, axis]):将数组拆分为多个子数组.

array_split(ary, indices_or_sections[, axis]):将数组拆分为多个子数组.

dsplit(ary, indices_or_sections):沿第3轴(深度)将数组拆分为多个子阵列.

hsplit(ary, indices_or_sections):将数组水平拆分为多个子数组(按列).

vsplit(ary, indices_or_sections):将数组垂直拆分为多个子数组(逐行)

平铺数组

tile(A, reps):通过重复A重复给出的次数来构造数组.

repeat(a, repeats[, axis]):重复数组的元素.

添加和删​​除元素

delete(arr, obj[, axis]):返回一个新数组,其子轴数组沿轴被删除.

insert(arr, obj, values[, axis]):在给定索引之前沿给定轴插入值.

append(arr, values[, axis]):将值附加到数组的末尾.

resize(a, new_shape):返回具有指定形状的新数组.

trim_zeros(filt[, trim]):从1-D数组或序列中修剪前导和/或尾随零.

unique(ar[, return_index, return_inverse, …]):找到数组的唯一元素.

重新排列元素

flip(m[, axis]):沿给定轴反转数组中元素的顺序.

fliplr(m):向左/向右翻转阵列.

flipud(m):向上/向下翻转阵列.

reshape(a, newshape[, order]):为数组提供新形状而不更改其数据.

roll(a, shift[, axis]):沿给定轴滚动数组元素.

rot90(m[, k, axes]):在轴指定的平面中将数组旋转90度

二进制运算

元素位操作

bitwise_and(x1, x2, /[, out, where, …]):逐个元素地计算两个数组的逐位AND.

bitwise_or(x1, x2, /[, out, where, casting, …]):逐个元素地计算两个数组的逐位OR.

bitwise_xor(x1, x2, /[, out, where, …]):计算两个数组的逐位XOR元素.

invert(x, /[, out, where, casting, order, …]):按位元素计算逐位反转或逐位NOT.

left_shift(x1, x2, /[, out, where, casting, …]):将整数位移到左侧.

right_shift(x1, x2, /[, out, where, …]):将整数位移到右侧.

位打包

packbits(myarray[, axis]):将二进制值数组的元素打包到uint8数组中的位中.

unpackbits(myarray[, axis]):将uint8数组的元素解包为二进制值输出数组.

输出格式

binary_repr(num[, width]):将输入数字的二进制表示形式返回为字符串.

字符串操作

此模块为类型numpy.string_或类型的数组提供一组矢量化字符串操作numpy.unicode_。所有这些都基于Python标准库中的字符串方法

String operations

add(x1, x2):返回两个str或unicode数组的逐元素字符串连接.

multiply(a, i):返回(a * i),即字符串多个连接,逐个元素.

mod(a, values):返回(a%i),即Python之前的2.6字符串格式化(iterpolation),元素方式为str或unicode的一对array_likes.

capitalize(a):返回的拷贝一个只有资本的每个元素的第一个字符.

center(a, width[, fillchar]):返回的拷贝与在长度的字符串居中其元素宽度.

decode(a[, encoding, errors]):元素方式调用str.decode.

encode(a[, encoding, errors]):元素方式调用str.encode.

join(sep, seq):返回一个字符串,它是序列seq中字符串的串联.

ljust(a, width[, fillchar]):返回与元素的数组一个左对齐的长度的字符串宽度.

lower(a):返回一个数组,其元素转换为小写.

lstrip(a[, chars]):对于每一个元素一个,去除了主角返回副本.

partition(a, sep):将每个元素分成一个周围的sep.

replace(a, old, new[, count]):对于每一个元素一个,返回字符串的副本串中出现的所有旧的换成新的

rjust(a, width[, fillchar]):返回与元素的数组一个右对齐的长度的字符串宽度.

rpartition(a, sep):对最右边的分隔符周围的每个元素进行分区(拆分).

rsplit(a[, sep, maxsplit]):在每个元件一个,返回的词的列表字符串中,使用作为分隔符串.

rstrip(a[, chars]):在每个元件一个,返回与除去尾部字符的副本.

split(a[, sep, maxsplit]):在每个元件一个,返回的词的列表字符串中,使用作为分隔符串.

splitlines(a[, keepends]):在每个元件一个,返回行的列表中的元素,在断裂线边界.

strip(a[, chars]):在每个元件一个,其中移除了前缘和后字符返回副本.

swapcase(a):返回元素的字符串副本,大写字符转换为小写,反之亦然.

title(a):返回元素字符串的字符串或unicode的版本.

translate(a, table[, deletechars]):对于每一个元素一个,返回其中可选的参数中出现的所有字符的字符串拷贝deletechars被删除,而剩余的字符已经通过给定的转换表映射.

upper(a):返回一个数组,其元素转换为大写.

zfill(a, width):返回左边用零填充的数字字符串

比较

与标准的numpy比较运算符不同,char 模块中的那些运算符在执行比较之前剥离尾随空白字符.

equal(x1, x2):以元素方式返回(x1 == x2).

not_equal(x1, x2):以元素方式返回(x1!= x2).

greater_equal(x1, x2):以元素方式返回(x1> = x2).

less_equal(x1, x2):以元素方式返回(x1 <= x2).

greater(x1, x2):以元素方式返回(x1> x2).

less(x1, x2):以元素方式返回(x1 <x2).

字符串信息

count(a, sub[, start, end]):返回一个数组,其中包含[ startend ] 范围内substring sub的非重叠出现次数

find(a, sub[, start, end]):对于每个元素,返回找到substring sub的字符串中的最低索引.

index(a, sub[, start, end]):比如find,但是当找不到子字符串时会引发ValueError.

isalpha(a):如果字符串中的所有字符都是字母并且至少有一个字符,则返回每个元素的true,否则返回false.

isdecimal(a):对于每个元素,如果元素中只有十进制字符,则返回True.

isdigit(a):如果字符串中的所有字符都是数字并且至少有一个字符,则返回每个元素的true,否则返回false.

islower(a):如果字符串中的所有外壳字符都是小写且至少有一个外壳字符,则为每个元素返回true,否则返回false.

isnumeric(a):对于每个元素,如果元素中只有数字字符,则返回True

isspace(a):如果字符串中只有空格字符并且至少有一个字符,则为每个元素返回true,否则返回false

istitle(a):如果元素是一个带有标题的字符串并且至少有一个字符,则为每个元素返回true,否则返回false.

isupper(a):如果字符串中的所有外壳字符都是大写且至少有一个字符,则返回每个元素的true,否则返回false.

rfind(a, sub[, start, end]):在每个元件一个,在字符串中返回指数最高,其中子被发现,使得包含[内开始结束.

rindex(a, sub[, start, end]):比如rfind,但是当找不到子字符串sub时会引发ValueError.

startswith(a, prefix[, start, end]):返回一个布尔数组是真正的地方在字符串元素一个开头前缀,否则

便利类

chararray(shape[, itemsize, unicode, …]):提供有关字符串和unicode值数组的便捷视图.

日期时间支持功能

datetime_as_string(arr[, unit, timezone, …]):将日期时间数组转换为字符串数组.

datetime_data(dtype, /):Get information about the step size of a date or time type

工作日功能

busdaycalendar([weekmask, holidays]):工作日日历对象,可有效存储定义busday系列函数的有效天数的信息.

is_busday(dates[, weekmask, holidays, …]):计算哪个给定日期是有效日期,哪些日期不是.

busday_offset(dates, offsets[, roll, …]):首先根据规则将日期调整为有效日期roll,然后将偏移应用于有效日期内计算的给定日期.

busday_count(begindates, enddates[, …]):计算begindatesenddates之间的有效天数,不包括enddates的日期.

数据类型

can_cast(from_, to[, casting]):如果根据强制转换规则在数据类型之间进行转换,则返回True.

promote_types(type1, type2):返回与最小的尺寸和最小的标样的数据类型,其两者type1并type2可以安全地投.

min_scalar_type(a):对于标量a,返回具有最小大小和最小标量类型的数据类型,该类型可以保存其值.

result_type(*arrays_and_dtypes):回将NumPy类型提升规则应用于参数所产生的类型

common_type(*arrays):返回输入数组常用的标量类型.

obj2sctype(rep[, default]):返回对象的Python类型的标量dtype或NumPy等价物

创建数据类型

dtype(obj[, align, copy]):创建数据类型对象.

format_parser(formats, names, titles[, …]):用于将格式,名称,标题描述转换为dtype的类

数据类型信息

finfo(dtype):浮点类型的机器限制.

iinfo(type):整数类型的机器限制.

MachAr([float_conv, int_conv, …]):诊断机器参数.

数据类型测试

issctype(rep):确定给定对象是否表示标量数据类型.

issubdtype(arg1, arg2):如果第一个参数是类型层次结构中较低/相等的类型代码,则返回True

issubsctype(arg1, arg2):确定第一个参数是否是第二个参数的子类.

issubclass_(arg1, arg2):确定类是否是第二个类的子类.

find_common_type(array_types, scalar_types):根据标准强制规则确定常见类型

杂项

typename(char):返回给定数据类型代码的描述.

sctype2char(sctype):返回标量dtype的字符串表示形式.

mintypecode(typechars[, typeset, default]):返回最小尺寸类型的字符,可以安全地转换给定类型.

可选Scipy加速例程(numpy.dual

Scipy可能加速的函数的别名。

可以构建Scipy以使用加速或其他改进的库来进行FFT,线性代数和特殊函数。此模块允许开发人员在scipy可用时透明地支持这些加速功能,但仍支持仅安装了NumPy的用户

线性代数

cholesky(a):Cholesky分解.

det(a):计算数组的行列式.

eig(a):计算正方形阵列的特征值和右特征向量.

eigh(a[, UPLO]):返回Hermitian或对称矩阵的特征值和特征向量

eigvals(a):计算一般矩阵的特征值.

eigvalsh(a[, UPLO]):计算Hermitian或实对称矩阵的特征值.

inv(a):计算矩阵的(乘法)逆.

lstsq(a, b[, rcond]):将最小二乘解返回到线性矩阵方程

norm(x[, ord, axis, keepdims]):矩阵或矢量规范.

pinv(a[, rcond]):计算矩阵的(Moore-Penrose)伪逆.

solve(a, b):求解线性矩阵方程或线性标量方程组.

svd(a[, full_matrices, compute_uv]):奇异值分解.

FFT

fft(a[, n, axis, norm]):计算一维离散傅立叶变换.

fft2(a[, s, axes, norm]):计算二维离散傅立叶变换

fftn(a[, s, axes, norm]):计算N维离散傅立叶变换.

ifft(a[, n, axis, norm]):计算一维离散傅里叶逆变换.

ifft2(a[, s, axes, norm]):计算二维逆离散傅立叶变换.

ifftn(a[, s, axes, norm]):计算N维逆离散傅立叶变换.

Other

i0(x):修改了第一类贝塞尔函数,阶数为0

具有自动域(numpy.emath)的数学函数

注意

numpy.emath是导入numpy.lib.scimath后可用的首选别名numpy

包装器用于更加用户友好地调用某些数学函数,这些函数的输出数据类型与输入的某些域中的输入数据类型不同。

例如,对于像log分支切割这样的函数,此模块中的版本在复杂平面中提供数学上有效的答案:

>>>
>>> import math
>>> from numpy.lib import scimath
>>> scimath.log(-math.exp(1)) == (1+1j*math.pi)
True

类似地,正确处理sqrt其他基本对数power和trig函数。有关具体示例,请参阅各自的文档字符串.

浮点错误处理

设置和获取错误处理

seterr([all, divide, over, under, invalid]):设置如何处理浮点错误.

geterr():获取当前处理浮点错误的方法

seterrcall(func):设置浮点错误回调函数或日志对象.

geterrcall():返回用于浮点错误的当前回调函数.

errstate(**kwargs):用于浮点错误处理的上下文管理器.

内部功能

seterrobj(errobj):设置定义浮点错误处理的对象.

geterrobj():返回定义浮点错误处理的当前对象

离散傅立叶变换(numpy.fft

标准 FFTs

fft(a[, n, axis, norm]):计算一维离散傅立叶变换.

ifft(a[, n, axis, norm]):计算一维离散傅里叶逆变换.

fft2(a[, s, axes, norm]):计算二维离散傅立叶变换

ifft2(a[, s, axes, norm]):计算二维逆离散傅立叶变换.

fftn(a[, s, axes, norm]):计算N维离散傅立叶变换.

ifftn(a[, s, axes, norm]):计算N维逆离散傅立叶变换.

实际 FFTs

rfft(a[, n, axis, norm]):计算一维离散傅立叶变换用于实际输入.

irfft(a[, n, axis, norm]):计算实际输入的n点DFT的倒数.

rfft2(a[, s, axes, norm]):计算实数组的二维FFT.

irfft2(a[, s, axes, norm]):计算实数组的二维逆FFT.

rfftn(a[, s, axes, norm]):为实际输入计算N维离散傅立叶变换

irfftn(a[, s, axes, norm]):计算实际输入的N维FFT的逆

Hermitian FFTs

hfft(a[, n, axis, norm]):计算具有厄米对称性的信号的FFT,即实际频谱.

ihfft(a[, n, axis, norm]):计算具有厄米对称性的信号的逆FFT.

Helper routines

fftfreq(n[, d]) :返回离散傅立叶变换采样频率 .

rfftfreq(n[, d]):返回离散傅里叶变换采样频率(用于rfft,irfft)

fftshift(x[, axes]):将零频率分量移到频谱中心

ifftshift(x[, axes]):逆的fftshift

财务职能

简单的财务功能

fv(rate, nper, pmt, pv[, when]):计算未来价值.

pv(rate, nper, pmt[, fv, when]):计算现值.

npv(rate, values):返回现金流序列的NPV(净现值).

pmt(rate, nper, pv[, fv, when]):计算贷款本金和利息的付款.

ppmt(rate, per, nper, pv[, fv, when]):计算贷款本金的付款.

ipmt(rate, per, nper, pv[, fv, when]):计算付款的利息部分.

irr(values):返回内部收益率(IRR).

mirr(values, finance_rate, reinvest_rate):修改内部收益率.

nper(rate, pmt, pv[, fv, when]):计算定期付款的数量.

rate(nper, pmt, pv, fv[, when, guess, tol, …]):计算每个期间的利率

功能编程

apply_along_axis(func1d, axis, arr, *args, …):将函数应用于沿给定轴的1-D切片.

apply_over_axes(func, a, axes):在多个轴上重复应用功能.

vectorize(pyfunc[, otypes, doc, excluded, …]):广义函数类.

frompyfunc(func, nin, nout):采用任意Python函数并返回NumPy ufunc.

piecewise(x, condlist, funclist, *args, **kw):评估分段定义的函数.

NumPy特定的帮助功能

lookfor(what[, module, import_modules, …]) :在docstrings上进行关键字搜索 .

Reading help

info([object, maxwidth, output, toplevel]):获取函数,类或模块的帮助信息.

source(object[, output]) :将文件打印或写入NumPy对象的源代码 .

索引

生成索引数组

c_:将切片对象转换为沿第二轴的连接.

r_:将切片对象转换为沿第一轴的连接.

s_:为数组构建索引元组的更好方法.

nonzero(a):返回非零元素的索引.

where(condition, [x, y]):返回元素,可以是xy,具体取决于条件.

indices(dimensions[, dtype]):返回表示网格索引的数组.

ix_(*args):从多个序列构造一个开放网格.

ogridnd_grid实例,它返回一个开放的多维“meshgrid”.

ravel_multi_index(multi_index, dims[, mode, …]):将索引数组的元组转换为平面索引数组,将边界模式应用于多索引.

unravel_index(indices, dims[, order]):将平面索引或平面索引数组转换为坐标数组的元组.

diag_indices(n[, ndim]):返回索引以访问数组的主对角线.

diag_indices_from(arr):返回索引以访问n维数组的主对角线.

mask_indices(n, mask_func[, k]):给定掩蔽函数,将索引返回到访问(n,n)数组.

tril_indices(n[, k, m]):返回(n,m)数组的下三角形的索引.

tril_indices_from(arr[, k]):返回arr的下三角形的索引.

triu_indices(n[, k, m]):返回(n,m)数组的上三角形的索引.

triu_indices_from(arr[, k]):返回arr上三角的索引.

类似索引的操作

take(a, indices[, axis, out, mode]):从轴上获取数组中的元素

take_along_axis(arr, indices, axis):通过匹配1d索引和数据切片从输入数组中获取值.

choose(a, choices[, out, mode]):从索引数组和一组数组构造一个数组以供选择.

compress(condition, a[, axis, out]):沿给定轴返回数组的选定切片.

diag(v[, k]):提取对角线或构造对角线阵列.

diagonal(a[, offset, axis1, axis2]):返回指定的对角线.

select(condlist, choicelist[, default]):返回从选择列表中的元素绘制的数组,具体取决于条件.

lib.stride_tricks.as_strided(x[, shape, …]):使用给定的形状和步幅创建数组视图.

将数据插入数组

place(arr, mask, vals):根据条件和输入值更改数组的元素.

put(a, ind, v[, mode]):用给定值替换数组的指定元素.

put_along_axis(arr, indices, values, axis):通过匹配1d索引和数据切片将值放入目标数组.

putmask(a, mask, values):根据条件和输入值更改数组的元素.

fill_diagonal(a, val[, wrap]):填充任何维度的给定数组的主对角线.

迭代数组

nditer:用于迭代数组的高效多维迭代器对象.

ndenumerate(arr):多维索引迭代器.

ndindex(*shape):用于索引数组的N维迭代器对象.

nested_iters:创建nditers以用于嵌套循环

flatiter:平面迭代器对象迭代数组

lib.Arrayterator(var[, buf_size]):用于大型数组的缓冲迭代器.

输入和输出

NumPy二进制文件(NPY, NPZ)

load(file[, mmap_mode, allow_pickle, …]):从.npy,.npz或pickle文件中加载数组、对象和pickled.

save(file, arr[, allow_pickle, fix_imports]):将数组保存为NumPy .npy格式的二进制文件.

savez(file, *args, **kwds):将多个数组以未压缩.npz格式保存到单个文件中.

savez_compressed(file, *args, **kwds):将多个数组以压缩.npz格式保存到单个文件中.

文本文件

loadtxt(fname[, dtype, comments, delimiter, …]):从文本文件加载数据.

savetxt(fname, X[, fmt, delimiter, newline, …]):将数组保存到文本文件.

genfromtxt(fname[, dtype, comments, …]):从文本文件加载数据,并按指定处理缺失值.

fromregex(file, regexp, dtype[, encoding]):使用正则表达式解析从文本文件构造数组.

fromstring(string[, dtype, count, sep]):从字符串中的文本数据初始化的新1-D数组.

ndarray.tofile(fid[, sep, format]):将数组作为文本或二进制写入文件(默认).

ndarray.tolist():将数组作为(可能是嵌套的)列表返回

原始二进制文件

fromfile(file[, dtype, count, sep]):根据文本或二进制文件中的数据构造数组.

ndarray.tofile(fid[, sep, format]):将数组作为文本或二进制写入文件(默认).

字符串格式

array2string(a[, max_line_width, precision, …]):返回数组的字符串表示形式.

array_repr(arr[, max_line_width, precision, …]):返回数组的字符串表示形式.

array_str(a[, max_line_width, precision, …]):返回数组中数据的字符串表示形式.

format_float_positional(x[, precision, …]):在位置表示法中将浮点标量格式化为十进制字符串.

format_float_scientific(x[, precision, …]):使用科学计数法将浮点标量格式化为十进制字符串.

内存映射文件

memmap:为存储在磁盘上的二进制文件中的数组创建内存映射.

文本格式化选项

set_printoptions([precision, threshold, …]):设置打印选项.

get_printoptions():返回当前的打印选项.

set_string_function(f[, repr]):设置一个Python函数,以便在相当打印数组时使用.

printoptions(*args, **kwargs):用于设置打印选项的上下文管理.

Base-n表示

binary_repr(num[, width]):将输入数字的二进制表示形式返回为字符串.

base_repr(number[, base, padding]):返回给定基本系统中数字的字符串表示形式

数据源

DataSource([destpath]):通用数据源文件(文件,http,ftp,...).

二进制格式说明

lib.format:二进制序列化

线性代数(numpy.linalg

矩阵和矢量积

dot(a, b[, out]):两个数组的乘积.

linalg.multi_dot(arrays):在单个函数调用中计算两个或多个数组的点积,同时自动选择最快的求值顺序.

vdot(a, b):返回两个向量的点积.

inner(a, b):两个数组的内积.

outer(a, b[, out]):计算两个向量的外积.

matmul(a, b[, out]):两个数组的矩阵乘积.

tensordot(a, b[, axes]):对于数组> = 1-D,沿指定轴计算张量点积.

einsum(subscripts, *operands[, out, dtype, …]):评估操作数上的爱因斯坦求和约定.

einsum_path(subscripts, *operands[, optimize]):通过考虑中间数组的创建,评估einsum表达式的最低成本收缩顺序.

linalg.matrix_power(a, n):将方阵提高到(整数)幂n.

kron(a, b):两个阵列的Kronecker产品.

分解

linalg.cholesky(a):Cholesky分解.

linalg.qr(a[, mode]):计算矩阵的qr分解.

linalg.svd(a[, full_matrices, compute_uv]):奇异值分解.

矩阵特征值

linalg.eig(a):计算正方形阵列的特征值和右特征向量.

linalg.eigh(a[, UPLO]):返回Hermitian或对称矩阵的特征值和特征向量.

linalg.eigvals(a):计算一般矩阵的特征值.

linalg.eigvalsh(a[, UPLO]):计算Hermitian或实对称矩阵的特征值.

规范和其他数字

linalg.norm(x[, ord, axis, keepdims]):矩阵或矢量规范.

linalg.cond(x[, p]):计算矩阵的条件数.

linalg.det(a):计算数组的行列式.

linalg.matrix_rank(M[, tol, hermitian]):使用SVD方法返回阵列的矩阵等级.

linalg.slogdet(a):计算数组行列式的符号和(自然)对数.

trace(a[, offset, axis1, axis2, dtype, out]):返回数组对角线的总和.

求解方程和反转矩阵

linalg.solve(a, b):求解线性矩阵方程或线性标量方程组.

linalg.tensorsolve(a, b[, axes]):求解x 的张量方程。b.

linalg.lstsq(a, b[, rcond]):将最小二乘解返回到线性矩阵方程.

linalg.inv(a):计算矩阵的(乘法)逆.

linalg.pinv(a[, rcond]):计算矩阵的(Moore-Penrose)伪逆.

linalg.tensorinv(a[, ind]):计算N维数组的“逆”.

Exceptions

linalg.LinAlgError :由linalg函数引发的通用Python异常派生对象

逻辑功能

真值测试

all(a[, axis, out, keepdims]):测试沿给定轴的所有数组元素是否评估为True.

any(a[, axis, out, keepdims]):测试沿给定轴的任何数组元素是否为True.

数组内容

isfinite(x, /[, out, where, casting, order, …]):有限度地测试元素(不是无穷大或不是无数).

isinf(x, /[, out, where, casting, order, …]):测试正元素或负无穷大元素.

isnan(x, /[, out, where, casting, order, …]):为NaN测试元素,并将结果作为布尔数组返回.

isnat(x, /[, out, where, casting, order, …]):为NaT(不是时间)测试元素,并将结果作为布尔数组返回.

isneginf(x[, out]):测试元素为负无穷大,返回结果为bool数组.

isposinf(x[, out]):测试元素为正无穷大,返回结果为bool数组.

数组类型测试

iscomplex(x):返回一个bool数组,如果input元素很复杂,则返回True.

iscomplexobj(x):检查复杂类型或复数数组.

isfortran(a):如果数组是Fortran连续但不是 C连续,则返回True.

isreal(x):返回一个bool数组,如果输入元素是实数,则返回True.

isrealobj(x):如果x是非复数类型或复数数组,则返回True.

isscalar(num):如果num的类型是标量类型,则返回True .

逻辑运算

logical_and(x1, x2, /[, out, where, …]):计算x1和x2元素的真值.

logical_or(x1, x2, /[, out, where, casting, …]):计算x1 OR x2元素的真值.

logical_not(x, /[, out, where, casting, …]):计算NOT x元素的真值.

logical_xor(x1, x2, /[, out, where, …]):以元素方式计算x1 XOR x2的真值.

比较

allclose(a, b[, rtol, atol, equal_nan]):如果两个数组在容差范围内在元素方面相等,则返回True.

isclose(a, b[, rtol, atol, equal_nan]):返回一个布尔数组,其中两个数组在容差范围内是元素相等的.

array_equal(a1, a2):如果两个数组具有相同的形状和元素,则为True,否则为False.

array_equiv(a1, a2):如果输入数组的形状一致且所有元素相等,则返回True.

greater(x1, x2, /[, out, where, casting, …]):以元素方式返回(x1> x2)的真值.

greater_equal(x1, x2, /[, out, where, …]):以元素方式返回(x1> = x2)的真值.

less(x1, x2, /[, out, where, casting, …]):以元素方式返回(x1 <x2)的真值.

less_equal(x1, x2, /[, out, where, casting, …]):以元素方式返回(x1 = <x2)的真值.

equal(x1, x2, /[, out, where, casting, …]):以元素方式返回(x1 == x2).

not_equal(x1, x2, /[, out, where, casting, …]):以元素方式返回(x1!= x2).

掩码数组操作

常数

ma.MaskTypealias of bool_

创建

从现有数据

ma.masked_arrayalias of MaskedArray

ma.array(data[, dtype, copy, order, mask, …])具有可能屏蔽值的数组类.

ma.copy(self, *args, **params) a.copy(order=)返回数组的副本.

ma.frombuffer(buffer[, dtype, count, offset])将缓冲区解释为一维数组.

ma.fromfunction(function, shape, **kwargs)通过在每个坐标上执行函数来构造数组.

ma.MaskedArray.copy([order])返回数组的副本.

Ones and zeros

ma.empty(shape[, dtype, order])返回给定形状和类型的新数组,而不初始化条目.

ma.empty_like(prototype[, dtype, order, subok])返回一个与给定数组具有相同形状和类型的新数组.

ma.masked_all(shape[, dtype])空蒙面数组,所有元素都被屏蔽.

ma.masked_all_like(arr)具有现有数组属性的空掩码数组.

ma.ones(shape[, dtype, order])返回一个给定形状和类型的新数组,用一个填充.

ma.zeros(shape[, dtype, order])返回给定形状和类型的新数组,用零填充.


检查数组

ma.all(self[, axis, out, keepdims])如果所有元素都计算为True,则返回True.

ma.any(self[, axis, out, keepdims])如果任何元素,则返回true 一个评估为True.

ma.count(self[, axis, keepdims])沿给定轴计算数组的非掩码元素.

ma.count_masked(arr[, axis])计算沿给定轴的遮罩元素数.

ma.getmask(a)返回蒙版数组或nomask的掩码.

ma.getmaskarray(arr)返回掩码数组的掩码,或False的完整布尔数组.

ma.getdata(a[, subok])将掩码数组的数据作为ndarray返回.

ma.nonzero(self)返回非零的未屏蔽元素的索引.

ma.shape(obj)返回数组的形状.

ma.size(obj[, axis])返回给定轴上的元素数.

ma.is_masked(x)确定输入是否具有掩码值.

ma.is_mask(m)如果m是有效的标准掩码,则返回True.

ma.MaskedArray.data返回当前数据,作为原始基础数据的视图.

ma.MaskedArray.maskMask

ma.MaskedArray.recordmask返回记录的掩码.

ma.MaskedArray.all([axis, out, keepdims])如果所有元素都计算为True,则返回True.

ma.MaskedArray.any([axis, out, keepdims])如果任何元素,则返回true 一个评估为True.

ma.MaskedArray.count([axis, keepdims])沿给定轴计算数组的非掩码元素.

ma.MaskedArray.nonzero()返回非零的未屏蔽元素的索引.

ma.shape(obj)返回数组的形状.

ma.size(obj[, axis])返回给定轴上的元素数.


Manipulating a MaskedArray

改变形状

ma.ravel(self[, order])作为视图返回self的1D版本.

ma.reshape(a, new_shape[, order])返回包含具有新形状的相同数据的数组.

ma.resize(x, new_shape)返回具有指定大小和形状的新蒙版数组.

ma.MaskedArray.flatten([order])将折叠的数组的副本返回到一个维度.

ma.MaskedArray.ravel([order])作为视图返回self的1D版本.

ma.MaskedArray.reshape(*s, **kwargs)为数组赋予新形状而不更改其数据.

   ma.MaskedArray.resize(newshape[, refcheck, …])

修改轴

ma.swapaxes(self, *args, …)返回数组的视图,其中axis1axis2互换.

ma.transpose(a[, axes])置换数组的维度.

ma.MaskedArray.swapaxes(axis1, axis2)返回数组的视图,其中axis1axis2互换.

ma.MaskedArray.transpose(*axes)返回轴转置的数组视图.

改变维数

ma.atleast_1d(*arys)将输入转换为至少具有一个维度的数组.

ma.atleast_2d(*arys)将输入视为具有至少两个维度的数组.

ma.atleast_3d(*arys)将输入视为具有至少三维的数组.

ma.expand_dims(x, axis)展开数组的形状.

ma.squeeze(a[, axis])从数组的形状中删除一维条目.

ma.MaskedArray.squeeze([axis])从形状除去单维输入一个.

ma.stack(arrays[, axis, out])沿新轴加入一系列数组.

ma.column_stack(tup)将1-D阵列作为列堆叠成2-D阵列.

ma.concatenate(arrays[, axis])沿给定轴连接一系列数组.

ma.dstack(tup)按顺序深度堆叠阵列(沿第三轴).

ma.hstack(tup)按顺序堆叠数组(列式).

ma.hsplit(ary, indices_or_sections)将数组水平拆分为多个子数组(按列).

ma.mr_将切片对象转换为沿第一轴的连接.

ma.row_stack(tup)垂直堆叠数组(行方式).

ma.vstack(tup)垂直堆叠数组(行方式).

连续数组

ma.stack(arrays[, axis, out])沿新轴加入一系列数组.

ma.column_stack(tup)将1-D阵列作为列堆叠成2-D阵列.

ma.concatenate(arrays[, axis])沿给定轴连接一系列数组.

ma.append(a, b[, axis])将值附加到数组的末尾.

ma.dstack(tup)按顺序深度堆叠阵列(沿第三轴).

ma.hstack(tup)按顺序堆叠数组(列式).

ma.vstack(tup)垂直堆叠数组(行方式).


掩码操作

创建掩码

ma.make_mask(m[, copy, shrink, dtype])从数组创建布尔掩码.

ma.make_mask_none(newshape[, dtype])返回给定形状的布尔掩码,填充False.

ma.mask_or(m1, m2[, copy, shrink])将两个面罩与logical_or操作员组合在一起.

ma.make_mask_descr(ndtype)从给定的dtype构造一个dtype描述列表.

访问掩码

ma.getmask(a)返回蒙版数组或nomask的掩码.

ma.getmaskarray(arr)返回掩码数组的掩码,或False的完整布尔数组.

ma.masked_array.maskMask

查找屏蔽数据

ma.flatnotmasked_contiguous(a)沿给定轴在掩码数组中查找连续的未屏蔽数据.

ma.flatnotmasked_edges(a)查找第一个和最后一个未屏蔽值的索引.

ma.notmasked_contiguous(a[, axis])沿给定轴在掩码数组中查找连续的未屏蔽数据.

ma.notmasked_edges(a[, axis])查找沿轴的第一个和最后一个未屏蔽值的索引.

ma.clump_masked(a)返回与1-D数组的掩码块对应的切片列表.

ma.clump_unmasked(a)返回与1-D阵列的未掩蔽块相对应的切片列表.

修改掩码

ma.mask_cols(a[, axis])屏蔽包含屏蔽值的2D数组的列.

ma.mask_or(m1, m2[, copy, shrink])将两个面罩与logical_or操作员组合在一起.

ma.mask_rowcols(a[, axis])屏蔽包含屏蔽值的2D数组的行和/或列.

ma.mask_rows(a[, axis])屏蔽包含屏蔽值的2D数组的行.

ma.harden_mask(self)强迫面膜变硬.

ma.soften_mask(self)强迫面膜变软.

ma.MaskedArray.harden_mask()强迫面膜变硬.

ma.MaskedArray.soften_mask()强迫面膜变软.

ma.MaskedArray.shrink_mask()尽可能将遮罩减少到nomask.

ma.MaskedArray.unshare_mask()复制掩码并将sharedmask标志设置为False.


转换操作

> to a masked array

ma.asarray(a[, dtype, order])将输入转换为给定数据类型的掩码数组.

ma.asanyarray(a[, dtype])将输入转换为掩码数组,保留子类.

ma.fix_invalid(a[, mask, copy, fill_value])返回带有无效数据的输入,并用填充值替换.

ma.masked_equal(x, value[, copy])屏蔽一个等于给定值的数组.

ma.masked_greater(x, value[, copy])屏蔽大于给定值的数组.

ma.masked_greater_equal(x, value[, copy])屏蔽大于或等于给定值的数组.

ma.masked_inside(x, v1, v2[, copy])在给定间隔内屏蔽数组.

ma.masked_invalid(a[, copy])屏蔽出现无效值的数组(NaN或infs).

ma.masked_less(x, value[, copy])屏蔽小于给定值的数组.

ma.masked_less_equal(x, value[, copy])屏蔽小于或等于给定值的数组.

ma.masked_not_equal(x, value[, copy])

  • 7
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值