Python学习 | 关于numpy,你必须知道的

1. numpy是什么?
numpy是Python的第三方数学扩展库,用于科学计算。

2. numpy的主要对象是什么?
numpy的主要对象是ndarray,它是一个n维数组对象。

3. 如何创建ndarray?
可以使用numpy.array()创建ndarray,例如:
>>> import numpy as np
>>> np.array([1, 2, 3]) 
array([1, 2, 3])

4. ndarray的属性有哪些?
ndarray的属性有:
ndarray.ndim - 维度
ndarray.shape - 数组维度
ndarray.size - 数组元素总数
ndarray.dtype - 数组元素类型

5. 如何获取ndarray的形状和长度?
可以使用.shape和.size获取ndarray的形状和长度,例如:
>>> a.shape  
(2, 3) 
>>> a.size
6 

6. NumPy提供哪些数据类型?
NumPy提供的主要数据类型有:
bool_, int_, intc, intp, int8, int16, int32, int64,
uint8, uint16, uint32, uint64, float_, float16, float32, float64,
complex_, complex64, complex128等

7. 如何改变ndarray的shape?
可以使用.reshape()改变ndarray的shape,例如: 
>>> a = np.array([1, 2, 3, 4])
>>> a.reshape((2, 2))
`array([[1, 2], 
       [3, 4]])`

8. NumPy的通用函数有哪些?
NumPy的通用函数有:
add, subtract, multiply, divide, sum, min, max等

9. 向量点积的计算方式?
向量点积可以使用numpy.dot()计算,例如:
>>> A = np.array([1, 2])
>>> B = np.array([3, 4])
>>> np.dot(A, B)  
11

10. 矩阵乘法的计算方式?
矩阵乘法可以使用@运算符或numpy.matmul()计算,例如:
>>> A = np.array([[1, 2], [3, 4]]) 
>>> B = np.array([[1, 0], [0, 1]])
>>> A @ B 
`array([[1, 2],
       [3, 4]])` 

11. 如何获取ndarray的转置?
可以使用.T获取ndarray的转置,例如:
>>> A = np.array([[1, 2], [3, 4]])
>>> A.T 
`array([[1, 3],
       [2, 4]])`

12. 如何获取ndarray的迹?
可以使用.trace()获取ndarray的迹,例如: 
>>> A = np.array([[1, 2], [3, 4]])
>>> np.trace(A) 
5

13. 如何计算矩阵的行列式?
可以使用numpy.linalg.det()计算矩阵的行列式,例如:
>>> A = np.array([[1, 2], [3, 4]])
>>> np.linalg.det(A)
-2.0

14. 如何计算矩阵的秩?
可以使用numpy.linalg.matrix_rank()计算矩阵的秩,例如:
>>> A = np.array([[1, 2], [3, 4]])
>>> numpy.linalg.matrix_rank(A)
2

15. 如何计算矩阵的特征值和特征向量?
可以使用numpy.linalg.eig()计算矩阵的特征值和特征向量,例如:
>>> A = np.array([[1, 2], [3, 4]])
>>> w, v = numpy.linalg.eig(A)

16. NumPy的广播机制是什么?
NumPy的广播机制可以让不同shaped的数组在计算时自动对齐。

17. 如何分割数组?
可以使用numpy.split()分割数组,例如:
>>> a = np.array([1, 2, 3, 4, 5, 6])
>>> np.split(a, 3) 
[array([1, 2]), array([3, 4]), array([5, 6])]

18. 如何连接数组?
可以使用numpy.concatenate()连接数组,例如:
>>> a = np.array([1, 2, 3]) 
>>> b = np.array([4, 5, 6])
>>> np.concatenate((a, b)) 
array([1, 2, 3, 4, 5, 6])

19. NumPy的随机模块有哪些内容?
NumPy的随机模块包含随机数生成器,如:randint()、randn()、shuffle()、choice()等。

20. argmin()和argmax()的用途?
argmin()返回最小值索引,argmax()返回最大值索引。

猜你喜欢

转载自blog.csdn.net/weixin_47964305/article/details/130900439