Тестирование программного обеспечения для Data Science в R


10

Я часто использую Nose, Tox или Unittest при тестировании моего кода на Python, особенно когда он должен быть интегрирован с другими модулями или другими частями кода. Однако теперь, когда я обнаружил, что использую R больше, чем python, для моделирования и разработки ML. Я понял, что на самом деле не тестирую свой R-код (и что более важно, я действительно не знаю, как это сделать хорошо). Поэтому мой вопрос в том, какие хорошие пакеты позволяют вам тестировать R-код таким же образом, как это делают Nose, Tox или Unittest в Python. Будем очень благодарны за дополнительные ссылки, такие как учебники.

Бонусные баллы за пакеты в R аналогичны

  1. гипотеза

    или

  2. Feature Forge

Родственный разговор:

Trey Causey: тестирование для ученых данных

Ответы:


7

Пакеты для модульного тестирования и активного тестирования, которые активно поддерживаются: Пакеты для модульного тестирования

  1. testthat: больше информации о том, как использовать, вы можете найти здесь или на github
  2. Runit: страница Крана

Пакеты для утверждений:

  1. assertthat: информация о github

  2. assertive: Assertive предлагает множество подпакетов, если вам не нужны все из них. проверить кран

  3. assertr: информация о github

  4. обеспечивающий: информация о github

  5. тестер: информация о github

Это вопрос предпочтения того, что вы хотите использовать для утверждений. Прочитайте эту страницу биокондуктора для получения дополнительной информации о разнице между RUnit и testthat.


1
Ложь. У RUnit появился новый сопровождающий.
Дирк Эддельбюттель

1
@DirkEddelbuettel, настроенный на основе вашей информации. tnx
phiver

1

Для пакета тестирования, похожего на Hypothesis и основанного на быстрой проверке Haskell, есть пакет R от Revolution Analytics, называемый quickcheck .


это выглядит великолепно, я попробую.
Wacax
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.