(编辑:jimmy 日期: 2024/12/27 浏览:2)
在机器学习中,我们会经常和矩阵打交道。在矩阵的运算中,python默认的输出是浮点数,但是如果我们想要矩阵的元素以分数的形式显示,可以通过添加一行代码来实现。
set_printoptions()——控制输出方式
formatter——通用格式化输出
Fraction(x).limit_denominator(y)——返回一个分母不大于y且最接近x的分数
from fractions import Fraction import numpy as np #设置矩阵元素输出用分数表示 np.set_printoptions(formatter={'all':lambda x: str(Fraction(x).limit_denominator())}) a = np.array([[0.8,-0.1,-0.2],[-0.5,0.5,-0.4],[-0.1,-0.3,0.8]]) print("分数形式显示原矩阵:") print(a) b = np.linalg.inv(a) #求逆矩阵 print("分数形式显示逆矩阵:") print(b)
输出结果