如何从系数矩阵打印回归方程?

时间:2018-09-27 11:34:49

标签: python linear-regression

我有一个回归系数矩阵。自变量为x, x^2, x^3,直到x^N,其中N是我选择的参数。我想打印一行,说明以下内容。

“回归模型为:y= a1 x+ a2 x^2+ a3 x^3 + ... + x^N

必须打印系数矩阵中的数字来代替a1a2等。该代码应同样适用于不同的N

1 个答案:

答案 0 :(得分:1)

遍历系数列表,并使用每个术语的文本表示形式构建字符串列表,然后将其与“ +”连接起来以创建方程式。

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'