python - 如何从系数矩阵打印回归方程?
问题描述
我有一个回归系数矩阵。自变量是x, x^2, x^3
, 直到x^N
whereN
是我选择的参数。我想打印一行内容如下。
“回归模型是:y= a1 x+ a2 x^2+ a3 x^3 + ... + x^N
”
必须打印系数矩阵中的数字来代替a1
,a2
等。代码应该N
同样适用于不同的情况。
解决方案
遍历您的系数列表并使用每个术语的文本表示构建一个字符串列表,然后将它们与“+”连接以创建方程。
def f(coefficients):
def term(coef, power):
coef = coef if coef != 1 else ''
power = (f'^{power}') if power > 1 else ''
return f'{coef}x{power}'
terms = []
for power, coef in enumerate(coefficients, start=1):
if coef != 0:
terms.append(term(coef, power))
return 'y = ' + ' + '.join(terms)
equation = f([8, 7, 0, -9, 1])
print(equation) # prints 'y = 8x + 7x^2 + -9x^4 + x^5'
推荐阅读
- javascript - JQuery 文件不建议在外部文件中
- testcontainers - Testcontainers/LocalStack 是否与 DynamoDb Streams KCL 1.x 一起使用?
- python - 'ReverseManyToOneDescriptor' 对象没有属性 'filter'
- javascript - VuetifyJs 工具提示中的可点击内容
- logistic-regression - 逻辑模型错误:奇异矩阵,同时具有高度相关的分类虚拟对象
- linq - Linq to sql,查询多对多与其他计数
- java - 如何总结对象流的数值属性?
- r - R-markdown 不断评估评论 - 这是预期的行为吗?
- html - 无法根据 Shopify 上的库存水平更新“添加到购物车”按钮
- c - 为什么第一个for循环递减?