Как распечатать уравнение регрессии из матрицы коэффициентов? - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть матрица коэффициентов регрессии.Независимые переменные: x, x^2, x^3, до x^N, где N - параметр по моему выбору.Я хотел бы напечатать строку следующего содержания:

"Модель регрессии: y= a1 x+ a2 x^2+ a3 x^3 + ... + x^N"

Числа из матрицы коэффициентов должны быть напечатаны вместо a1, a2 и т. Д. Код должен одинаково хорошо работать для разных N.

1 Ответ

0 голосов
/ 27 сентября 2018

Просмотрите список коэффициентов и создайте список строк с текстовым представлением каждого термина, затем соедините их с помощью «+», чтобы создать уравнение.

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'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...