📅  最后修改于: 2020-11-08 07:33:37             🧑  作者: Mango
在本章中,我们将讨论NumPy的各种数组属性。
此数组属性返回一个由数组维组成的元组。它也可以用来调整数组的大小。
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
print a.shape
输出如下-
(2, 3)
# this resizes the ndarray
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
a.shape = (3,2)
print a
输出如下-
[[1, 2]
[3, 4]
[5, 6]]
NumPy还提供了一种调整形状函数以调整数组大小。
import numpy as np
a = np.array([[1,2,3],[4,5,6]])
b = a.reshape(3,2)
print b
输出如下-
[[1, 2]
[3, 4]
[5, 6]]
此数组属性返回数组维数。
# an array of evenly spaced numbers
import numpy as np
a = np.arange(24)
print a
输出如下-
[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23]
# this is one dimensional array
import numpy as np
a = np.arange(24)
a.ndim
# now reshape it
b = a.reshape(2,4,3)
print b
# b is having three dimensions
输出如下-
[[[ 0, 1, 2]
[ 3, 4, 5]
[ 6, 7, 8]
[ 9, 10, 11]]
[[12, 13, 14]
[15, 16, 17]
[18, 19, 20]
[21, 22, 23]]]
此数组属性返回数组每个元素的长度(以字节为单位)。
# dtype of array is int8 (1 byte)
import numpy as np
x = np.array([1,2,3,4,5], dtype = np.int8)
print x.itemsize
输出如下-
1
# dtype of array is now float32 (4 bytes)
import numpy as np
x = np.array([1,2,3,4,5], dtype = np.float32)
print x.itemsize
输出如下-
4
ndarray对象具有以下属性。此函数返回其当前值。
Sr.No. | Attribute & Description |
---|---|
1 |
C_CONTIGUOUS (C) The data is in a single, C-style contiguous segment |
2 |
F_CONTIGUOUS (F) The data is in a single, Fortran-style contiguous segment |
3 |
OWNDATA (O) The array owns the memory it uses or borrows it from another object |
4 |
WRITEABLE (W) The data area can be written to. Setting this to False locks the data, making it read-only |
5 |
ALIGNED (A) The data and all elements are aligned appropriately for the hardware |
6 |
UPDATEIFCOPY (U) This array is a copy of some other array. When this array is deallocated, the base array will be updated with the contents of this array |
下面的示例显示标志的当前值。
import numpy as np
x = np.array([1,2,3,4,5])
print x.flags
输出如下-
C_CONTIGUOUS : True
F_CONTIGUOUS : True
OWNDATA : True
WRITEABLE : True
ALIGNED : True
UPDATEIFCOPY : False