Ошибка в раунде (sw.fit, 2): нечисловой аргумент для отслеживания математической функции:

#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))