作用 | |
---|---|
1 | 基本属性 |
a.dtype | 数组元素类型 float32,uint8,... |
a.shape | 数组形状 (m,n,o,...) |
a.size | 数组元素数 |
a.itemsize | 每个元素占字节数 |
a.nbytes | 所有元素占的字节 |
a.ndim | 数组维度 |
2 | 形状相关 |
a.flat | 所有元素的迭代器 |
a.flatten() | 返回一个1维数组的复制 |
a.ravel() | 返回一个1维数组,高效 |
a.resize(new_size) | 改变形状 |
a.swapaxes(axis1, axis2) | 交换两个维度的位置 |
a.transpose(*axex) | 交换所有维度的位置 |
a.T | 转置,a.transpose() |
a.squeeze() | 去除所有长度为1的维度 |
3 | 填充复制 |
a.copy() | 返回数组的一个复制 |
a.fill(value) | 将数组的元组设置为特定值 |
4 | 转化 |
a.tolist() | 将数组转化为列表 |
a.tostring() | 转换为字符串 |
a.astype(dtype) | 转化为指定类型 |
a.byteswap(False) | 转换大小字节序 |
a.view(type_or_dtype) | 生成一个使用相同内存,但使用不同的表示方法的数组 |
5 | 复数 |
a.imag | 虚部 |
a.real | 实部 |
a.conjugate() | 复共轭 |
a.conj() | 复共轭(缩写) |
6 | 保存 |
a.dump(file) | 将二进制数据存在file中 |
a.dump() | 将二进制数据表示成字符串 |
a.tofile(fid, sep="",format="%s") | 格式化ASCⅡ码写入文件 |
7 | 查找排序 |
a.nonzero() | 返回所有非零元素的索引 |
a.sort(axis=-1) | 沿某个轴排序 |
a.argsort(axis=-1) | 沿某个轴,返回按排序的索引 |
a.searchsorted(b) | 返回将b中元素插入a后能保持有序的索引值 |
8 | 元素数学操作 |
a.clip(low, high) | 将数值限制在一定范围内 |
a.round(decimals=0) | 近似到指定精度 |
a.cumsum(axis=None) | 累加和 |
a.cumprod(axis=None) | 累乘积 |
9 | 约简操作 |
a.sum(axis=None) | 求和 |
a.prod(axis=None) | 求积 |
a.min(axis=None) | 最小值 |
a.max(axis=None) | 最大值 |
a.argmin(axis=None) | 最小值索引 |
a.argmax(axis=None) | 最大值索引 |
a.ptp(axis=None) | 最大值减最小值 |
a.mean(axis=None) | 平均值 |
a.std(axis=None) | 标准差 |
a.var(axis=None) | 方差 |
a.any(axis=None) | 只要有一个不为0,返回真,逻辑或 |
a.all(axis=None) | 所有都不为0,返回真,逻辑与 |
In [1]:
from numpy import *
In [2]:
a
=
array
([[
0
,
1
,
2
,
3
],
[
4
,
5
,
6
,
7
]])
a
Out[2]:
数组元素属性:
In [3]:
a.dtype
Out[3]:
形状:
In [4]:
a.shape
Out[4]:
元素数目:
In [5]:
a.size
Out[5]:
元素占字节大小:
In [6]:
a.itemsize
Out[6]:
所有元素所占字节:
In [7]:
a.nbytes
Out[7]:
数据维度:
In [8]:
a.ndim
Out[8]:
In [9]:
for
row
in
a
:
print
row
所有元素的迭代器:
In [10]:
for
elt
in
a
.
flat
:
print
elt
所有元素组成的一维数组,按照行排列:
In [11]:
a.flatten()
Out[11]:
In [12]:
a.ravel()
Out[12]:
重新改变形状:
In [13]:
a
.
resize
((
4
,
2
))
a
Out[13]:
交换这两个轴的顺序:
In [14]:
a.swapaxes(0,1)
Out[14]:
转置:
In [15]:
a.transpose()
Out[15]:
转置:
In [16]:
a.T
Out[16]:
In [17]:
a2
=
array
([
1
,
2
,
3
])
a2
.
shape
Out[17]:
In [18]:
a2
.
resize
((
1
,
3
,
1
))
a2
.
shape
Out[18]:
去除长度为1的维度:
In [19]:
a2
=
a2
.
squeeze
()
a2
.
shape
Out[19]:
复制:
In [20]:
b
=
a
.
copy
()
b
Out[20]:
复制不影响原来的数组:
In [21]:
b
[
0
][
0
]
=
-
1
b
# First value changed
Out[21]:
In [22]:
a # original not changed because b is a copy
Out[22]:
填充:
In [23]:
b
.
fill
(
4
)
b
Out[23]:
转化为列表:
In [24]:
a.tolist()
Out[24]:
转化为字符串:
In [25]:
a.tostring()
Out[25]:
改变数组元素类型:
In [26]:
a.astype(float)
Out[26]:
In [27]:
b
=
a
.
copy
()
b
.
byteswap
(
False
)
Out[27]:
将它看成16位整数:
In [28]:
a.view(dtype=int16)
Out[28]:
实部:
In [29]:
b
=
array
([
1
+
2j
,
3
+
4j
,
5
+
6j
])
b
.
real
Out[29]:
虚部:
In [30]:
b.imag
Out[30]:
共轭:
In [31]:
b.conj()
Out[31]:
In [32]:
b.conjugate()
Out[32]:
保存成文本:
In [33]:
a.dump("file.txt")
字符串:
In [34]:
a.dumps()
Out[34]:
写入文件:
In [35]:
a.tofile('foo.csv', sep=',', format="%s")
非零元素的索引:
In [36]:
a.nonzero()
Out[36]:
排序:
In [37]:
b
=
array
([
3
,
2
,
7
,
4
,
1
])
b
.
sort
()
b
Out[37]:
排序的索引位置:
In [38]:
b
=
array
([
2
,
3
,
1
])
b
.
argsort
(
axis
=-
1
)
Out[38]:
将 b
插入 a
中的索引,使得 a
保持有序:
In [39]:
a
=
array
([
1
,
3
,
4
,
6
])
b
=
array
([
0
,
2
,
5
])
a
.
searchsorted
(
b
)
Out[39]:
限制在一定范围:
In [40]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
clip
(
0
,
2
)
Out[40]:
近似:
In [41]:
a
=
array
([
1.344
,
2.449
,
2.558
])
a
.
round
(
decimals
=
2
)
Out[41]:
累加和:
In [42]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
cumsum
(
axis
=
None
)
Out[42]:
累乘积:
In [43]:
a.cumprod(axis=None)
Out[43]:
求和:
In [44]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
sum
(
axis
=
None
)
Out[44]:
求积:
In [45]:
a.prod(axis=None)
Out[45]:
最小值:
In [46]:
a.min(axis=None)
Out[46]:
最大值:
In [47]:
a.max(axis=None)
Out[47]:
最小值索引:
In [48]:
a.argmin(axis=None)
Out[48]:
最大值索引:
In [49]:
a.argmax(axis=None)
Out[49]:
最大间隔:
In [50]:
a.ptp(axis=None)
Out[50]:
均值:
In [51]:
a.mean(axis=None)
Out[51]:
标准差:
In [52]:
a.std(axis=None)
Out[52]:
方差:
In [53]:
a.var(axis=None)
Out[53]:
是否有非零元素:
In [54]:
a.any(axis=None)
Out[54]:
是否全部非零:
In [55]:
a.all()
Out[55]:
删除生成的文件:
In [56]:
import
os
os
.
remove
(
'foo.csv'
)
os
.
remove
(
'file.txt'
)
作用 | |
---|---|
1 | 基本属性 |
a.dtype | 数组元素类型 float32,uint8,... |
a.shape | 数组形状 (m,n,o,...) |
a.size | 数组元素数 |
a.itemsize | 每个元素占字节数 |
a.nbytes | 所有元素占的字节 |
a.ndim | 数组维度 |
2 | 形状相关 |
a.flat | 所有元素的迭代器 |
a.flatten() | 返回一个1维数组的复制 |
a.ravel() | 返回一个1维数组,高效 |
a.resize(new_size) | 改变形状 |
a.swapaxes(axis1, axis2) | 交换两个维度的位置 |
a.transpose(*axex) | 交换所有维度的位置 |
a.T | 转置,a.transpose() |
a.squeeze() | 去除所有长度为1的维度 |
3 | 填充复制 |
a.copy() | 返回数组的一个复制 |
a.fill(value) | 将数组的元组设置为特定值 |
4 | 转化 |
a.tolist() | 将数组转化为列表 |
a.tostring() | 转换为字符串 |
a.astype(dtype) | 转化为指定类型 |
a.byteswap(False) | 转换大小字节序 |
a.view(type_or_dtype) | 生成一个使用相同内存,但使用不同的表示方法的数组 |
5 | 复数 |
a.imag | 虚部 |
a.real | 实部 |
a.conjugate() | 复共轭 |
a.conj() | 复共轭(缩写) |
6 | 保存 |
a.dump(file) | 将二进制数据存在file中 |
a.dump() | 将二进制数据表示成字符串 |
a.tofile(fid, sep="",format="%s") | 格式化ASCⅡ码写入文件 |
7 | 查找排序 |
a.nonzero() | 返回所有非零元素的索引 |
a.sort(axis=-1) | 沿某个轴排序 |
a.argsort(axis=-1) | 沿某个轴,返回按排序的索引 |
a.searchsorted(b) | 返回将b中元素插入a后能保持有序的索引值 |
8 | 元素数学操作 |
a.clip(low, high) | 将数值限制在一定范围内 |
a.round(decimals=0) | 近似到指定精度 |
a.cumsum(axis=None) | 累加和 |
a.cumprod(axis=None) | 累乘积 |
9 | 约简操作 |
a.sum(axis=None) | 求和 |
a.prod(axis=None) | 求积 |
a.min(axis=None) | 最小值 |
a.max(axis=None) | 最大值 |
a.argmin(axis=None) | 最小值索引 |
a.argmax(axis=None) | 最大值索引 |
a.ptp(axis=None) | 最大值减最小值 |
a.mean(axis=None) | 平均值 |
a.std(axis=None) | 标准差 |
a.var(axis=None) | 方差 |
a.any(axis=None) | 只要有一个不为0,返回真,逻辑或 |
a.all(axis=None) | 所有都不为0,返回真,逻辑与 |
In [1]:
from numpy import *
In [2]:
a
=
array
([[
0
,
1
,
2
,
3
],
[
4
,
5
,
6
,
7
]])
a
Out[2]:
数组元素属性:
In [3]:
a.dtype
Out[3]:
形状:
In [4]:
a.shape
Out[4]:
元素数目:
In [5]:
a.size
Out[5]:
元素占字节大小:
In [6]:
a.itemsize
Out[6]:
所有元素所占字节:
In [7]:
a.nbytes
Out[7]:
数据维度:
In [8]:
a.ndim
Out[8]:
In [9]:
for
row
in
a
:
print
row
所有元素的迭代器:
In [10]:
for
elt
in
a
.
flat
:
print
elt
所有元素组成的一维数组,按照行排列:
In [11]:
a.flatten()
Out[11]:
In [12]:
a.ravel()
Out[12]:
重新改变形状:
In [13]:
a
.
resize
((
4
,
2
))
a
Out[13]:
交换这两个轴的顺序:
In [14]:
a.swapaxes(0,1)
Out[14]:
转置:
In [15]:
a.transpose()
Out[15]:
转置:
In [16]:
a.T
Out[16]:
In [17]:
a2
=
array
([
1
,
2
,
3
])
a2
.
shape
Out[17]:
In [18]:
a2
.
resize
((
1
,
3
,
1
))
a2
.
shape
Out[18]:
去除长度为1的维度:
In [19]:
a2
=
a2
.
squeeze
()
a2
.
shape
Out[19]:
复制:
In [20]:
b
=
a
.
copy
()
b
Out[20]:
复制不影响原来的数组:
In [21]:
b
[
0
][
0
]
=
-
1
b
# First value changed
Out[21]:
In [22]:
a # original not changed because b is a copy
Out[22]:
填充:
In [23]:
b
.
fill
(
4
)
b
Out[23]:
转化为列表:
In [24]:
a.tolist()
Out[24]:
转化为字符串:
In [25]:
a.tostring()
Out[25]:
改变数组元素类型:
In [26]:
a.astype(float)
Out[26]:
In [27]:
b
=
a
.
copy
()
b
.
byteswap
(
False
)
Out[27]:
将它看成16位整数:
In [28]:
a.view(dtype=int16)
Out[28]:
实部:
In [29]:
b
=
array
([
1
+
2j
,
3
+
4j
,
5
+
6j
])
b
.
real
Out[29]:
虚部:
In [30]:
b.imag
Out[30]:
共轭:
In [31]:
b.conj()
Out[31]:
In [32]:
b.conjugate()
Out[32]:
保存成文本:
In [33]:
a.dump("file.txt")
字符串:
In [34]:
a.dumps()
Out[34]:
写入文件:
In [35]:
a.tofile('foo.csv', sep=',', format="%s")
非零元素的索引:
In [36]:
a.nonzero()
Out[36]:
排序:
In [37]:
b
=
array
([
3
,
2
,
7
,
4
,
1
])
b
.
sort
()
b
Out[37]:
排序的索引位置:
In [38]:
b
=
array
([
2
,
3
,
1
])
b
.
argsort
(
axis
=-
1
)
Out[38]:
将 b
插入 a
中的索引,使得 a
保持有序:
In [39]:
a
=
array
([
1
,
3
,
4
,
6
])
b
=
array
([
0
,
2
,
5
])
a
.
searchsorted
(
b
)
Out[39]:
限制在一定范围:
In [40]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
clip
(
0
,
2
)
Out[40]:
近似:
In [41]:
a
=
array
([
1.344
,
2.449
,
2.558
])
a
.
round
(
decimals
=
2
)
Out[41]:
累加和:
In [42]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
cumsum
(
axis
=
None
)
Out[42]:
累乘积:
In [43]:
a.cumprod(axis=None)
Out[43]:
求和:
In [44]:
a
=
array
([[
4
,
1
,
3
],[
2
,
1
,
5
]])
a
.
sum
(
axis
=
None
)
Out[44]:
求积:
In [45]:
a.prod(axis=None)
Out[45]:
最小值:
In [46]:
a.min(axis=None)
Out[46]:
最大值:
In [47]:
a.max(axis=None)
Out[47]:
最小值索引:
In [48]:
a.argmin(axis=None)
Out[48]:
最大值索引:
In [49]:
a.argmax(axis=None)
Out[49]:
最大间隔:
In [50]:
a.ptp(axis=None)
Out[50]:
均值:
In [51]:
a.mean(axis=None)
Out[51]:
标准差:
In [52]:
a.std(axis=None)
Out[52]:
方差:
In [53]:
a.var(axis=None)
Out[53]:
是否有非零元素:
In [54]:
a.any(axis=None)
Out[54]:
是否全部非零:
In [55]:
a.all()
Out[55]:
删除生成的文件:
In [56]:
import
os
os
.
remove
(
'foo.csv'
)
os
.
remove
(
'file.txt'
)