Я создал класс LinearRegression как часть домашней задачи, но результаты, которые я получаю, отображают сумасшедшее количество десятичных знаков вместе с научной записью. Мне бы очень понравилось, если бы мой вывод отображал значения только до нескольких десятичных знаков.
Я пробовал попробовать f-string и format. Эти делают уменьшают количество отображаемых десятичных знаков, но экспоненциальное представление остается в выводе, а иногда некоторые значения отображаются просто как «inf». Примеры ниже.
Если я проверю это следующим образом (согласно заданию):
from model import LinearRegression # model.py is my file
model = LinearRegression()
examples = list(range(1, 1000))
values = list(range(1, 1000))
for i in range(len(examples)):
model.addSample(examples[i], values[i])
print(model.fit(0.0006, 100))
Я получаю вывод:
(2.1803197675124753549e+229, 1.4528186498977718021e+232, 1.7775211633675145435e+465)
Когда я добавляю форматирование (например, возвращая '{:.4}'.format(self.theta_0) в методе fit() моего класса), я получаю:
('2.18e+229', '1.453e+232', 'inf')
Я действительно не уверен, почему это так привередливо. Должно быть что-то, что я упускаю. Любая помощь приветствуется!