R S3 cat () вывод из функции - PullRequest
0 голосов
/ 03 сентября 2018

У меня проблема с выводом из функции S3. Я пытаюсь перегрузить функцию «+», чтобы действовать с двумя векторами, как с полиномиальными параметрами. Это мой университетский проект. Код ниже:

'+.ply' <- function(a,b){
  size <- max(length(a$polynomial),length(b$polynomial)) 
  size
  aAdd <- a$polynomial
  bAdd <- b$polynomial

  if (length(aAdd) == size) {
   aAdd = aAdd
  } else {
    length(aAdd) <- size   
  }
  aAdd[is.na(aAdd)] <- 0

  if (length(bAdd) == size) {
    bAdd = bAdd
  } else {
    length(bAdd) <- size    
  }
  bAdd[is.na(bAdd)] <- 0

 cat("Polynomial of degree ", paste(length(aAdd+bAdd)-1), 
                  " with coefficients ", paste(aAdd+bAdd))
}

Код работает нормально, но, в свою очередь, выдает вывод

*Polynomial of degree  3  with coefficients  3 4 6 3NULL*

Мне нужно использовать cat, чтобы избежать индекса [1], который появляется, когда я использую комбинацию print, paste. Я знаю, что существует множество потоков по этой проблеме, но я не могу найти решение этой проблемы во время перегрузки функций. Буду благодарен за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...