#r #linearmodels
#r #линейные модели
Вопрос:
Я знаю, что есть несколько ответов на вопросы, касающиеся этой ошибки в R. Однако я не смог найти тот, который мог бы помочь мне в моем случае.
То, что я пытаюсь сделать, это поместить в нее множественную линейную модель и округлить полученный результат до 2 знаков после запятой. Однако я получаю эту ошибку:
Это то, что я использовал для подгонки модели:
sw.fit <- step(lm.fit, k = log(nrow(train)), trace = 0, direction = 'both')
и это то, что я использовал для округления до 2 знаков после запятой:
sw.fit<- round(sw.fit,2)
и это ошибка, которую я получаю:
Error in round(sw.fit, 2): non-numeric argument to mathematical function
Traceback:
Не могли бы вы помочь мне выяснить, что я здесь делаю не так?
Я ценю вашу помощь, заранее благодарю вас!
Комментарии:
1. Если вы проверите
class(sw.fit)
, вы увидите, что это неnumeric
так, ноlm
(линейная модель). Сначала необходимо извлечь соответствующие коэффициенты, которые вы хотите округлить, прежде чемround()
2. Если может быть полезно посмотреть
coef
илиsummary
ваш результат.3.
coef(sw.fit)
даст вам коэффициент.4. Привет всем, мне наконец удалось округлить его, выполнив: print(round(coeff, digits = 2))