1.1、numpy的属性
1.2、array
import numpy as np
a=np.arrange(12).reshape((3,4))//生成有序数列或者矩阵,定义长和宽,三行四列
a=np.linspace(1,10,20) //生成线段 .reshape((2,3))
print(a)
1.3、基础运算
np.array 是 NumPy 库中的一个函数,用于创建数组。它可以接受一个序列或嵌套序列作为输入,并将其转换为 NumPy 数组。这个函数可以用来创建一维、二维甚至多维数组,是 NumPy 中常用的函数之一。
# 创建一维数组
arr1 = np.array([1, 2, 3, 4, 5])
# 创建二维数组
arr2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
在Python中,array是一种数据结构,用于存储相同类型的元素。它类似于列表,但与列表不同的是,数组只能存储一种类型的元素,而且它的大小是固定的。数组可以包含数字、字符串、布尔值等元素。要使用数组,需要导入array模块,然后创建一个数组对象并指定元素的类型。数组的元素可以通过索引来访问和修改。使用数组可以提高数据存储和访问的效率。
下面是一个使用array的简单示例:
from array import array
# 创建一个整数类型的数组
arr = array('i', [1, 2, 3, 4, 5])
# 访问数组元素
print(arr[0]) # 输出 1
# 修改数组元素
arr[1] = 10
# 遍历数组
for num in arr:
print(num)
在这个示例中,我们首先导入了array模块,然后创建了一个整数类型的数组arr,其中包含了5个整数。我们可以通过索引来访问和修改数组的元素,也可以使用for循环来遍历数组中的元素。
numpy中乘法分为两种:1、直接相乘 2、矩阵相乘
c =a*b
c_dot=np.dot(a,b)//c_dot_2=a.dot(b)
import numpy as np
a=np.random.random((2,4))//2行四列的shape
print(a)
print(np.sum(a))
print(np.min(a))
print(np.max(a))
//只是想找到某一行的最大最小求和
print(np.sum(a,axis=1)) //axis 代表维度,其中1代表行,0代表列
矩阵最大值索引,
import numpy as np
A=np.arrange(2,14).reshape((3,4)) //代表在2-14区间范围内但,左闭右开,建造矩阵三行四列
//索引
print(np.argmin(A)) //由于2的索引是0位 所以输出是0
print(np.argmax(A)) //由于一共12个数字,从0开始,那么13在右下角,索引是11
print(np.mean(A)) //整个矩阵的平均值
=print (A.mean())
//mean 可以换成average 但是只能上面的用下面的不能
//逐步加进去
print(A)
print(np.cumsum(A))
//累差
print(A)
print(np.diff(A))
//寻找非零数
print(A)
结果中左边是行,右边是列,锁定某个数,比如第一个2是0行0列
排序sort
print(np.sort(A))
矩阵转置
print(np.transpose)
print(A.T)
矩阵乘法
print((A.T).dot(A))
clip 也就是说小于五的等于五,大于9的等于9.
import numpy as np
A=np.arrange(14,2,-1).reshape((3,4))
print(A)
print(np.clip(A,5,9))
print(np.mean(A,axis=0))
axis 0代表列
1.4、索引
检索都是从0开始,第一行是0,第一列也是0列
A=np.arange(3,15).reshape((3,4))
print(A)
print(A[1][1])//表示 检索第二行第二列的数
=print(A[2,1])
//用冒号代表所有数,比如某行所有数,某列所有数
print(A[;,1])
print(A[1,1;3]) //代表第二行,然后第二列到第四列,但是左闭右开,意思是取2、3列
迭代某一行,迭代列 for循环
用flatten() 可以返回一个迭代值,区分flat,这是化为一行