python进阶—numpy进阶

内容:矩阵mat、通用函数、线性计算等

1、矩阵

import numpy as np

# 创建矩阵
print("####创建矩阵####")
a = np.mat("1 2 3;4 5 6")  # 通过str创建
b = np.mat(np.arange(10).reshape(5,2))  # 通过ndarray创建
c = np.matrix(np.arange(6).reshape(3,2))  # matrix函数创建

# 矩阵的属性
print("####矩阵的属性####")
transpose_a = a.transpose  # 矩阵转置
transpose_a2 = a.T  # 矩阵转置
inverse_a = a.I  # 矩阵的逆
base_array_a = a.A # 基于矩阵的数组
hermitian_a = a.H  # 共轭元素矩阵

# 矩阵的方法
print("####矩阵的方法####")
a.all()  # 沿给定的轴判断矩阵中所有元素是否为真(0:假,1:真) true
a.any()  # 沿给定的轴判断矩阵中任意元素是否为真,只要有一个不等于0即为真 true
a.argmax()  # 沿给定的轴返回矩阵中最大元素的索引 5
a.argmin()  # 沿给定轴返回矩阵中最小元素的索引 0
arr = np.array([[0, 4, 2], [0, 0, 5]])
arr.argsort()  # 返回从小到大排序后的索引矩阵 [[0 2 1],[1 0 2]]
a.astype("float")  # 更改矩阵中元素的数据类型
a.clip(1, 2)  # 返回新的矩阵,比给定元素大的元素为2,比给定元素小的为1 [[1 2 2],[2 2 2]]
arr2 = a.copy()  # 复制一个矩阵给另一个对象
a.cumsum()  # 沿指定轴累计求和(保留中间解果)[1 3 6 10 15 21]
a.cumprod()  # 沿指定轴累计求积
a.diagonal()  # 返回对角线元素([1,5])
np.dot(a.T, b)  # 矩阵点乘
a.dump(r"C:\Users\67505\Desktop\新建文本文档.txt")  # 将矩阵存储为指定文件
a.dumps()  # 将矩阵的数据转换成字符串
a.fill(10)  # 将矩阵中所有元素填充为指定的value
a.getA()  # 返回自己(ndarray)
a.getA1()  # 返回扁平的一维数组
a.getT()  # 返回转置矩阵
a.getI()  # 返回逆矩阵
a.getH()  # 返回共轭矩阵
a.max(axis=1)  # 返回指定轴的最大值
a.min()  # 返回指定轴的最小值
a.mean()  # 返回指定轴的平均值
arr.nonzero()  # 返回非零元素的索引矩阵
a.prod()  # 返回矩阵元素的乘积 1000000
a.ptp()  # 指定轴方向最大值减去最小值
a.put([0, 1, 4], [1, 2, 8])  # 用给定的value替换矩阵指定索引对应的元素
a.repeat(3, axis=1)  # 重复矩阵中的每个元素,跨列
a.reshape((3, 2))  # 更改矩阵形状(拷贝)
a.resize((3, 2))  # 更改矩阵形状(视图)
a.sort()  # 对矩阵进行排序(视图)
a.std()
a.sum()
a.swapaxes(0, 1)  # 交换两个轴方向上的数据
a.take([1, 2, 3])  # 提取指定索引位置的数据
a.trace()
a.transpose()
a.var()
a.view()  # 返回视图

猜你喜欢

转载自blog.csdn.net/qq_35511580/article/details/81236844