2012-02-06 3 views
0

Можно ли подавлять такие сообщения, как «Использование формата даты ...» при использовании такой функции?lubridate - сообщения

> ymd(vec) 
Using date format %Y%m%d 

Хотя это хорошо, чтобы увидеть, когда вы бросаете вектор, это может раздражать в некоторых обстоятельствах.

ответ

4

Рассматривая код ymd, он вызывает parse_date, что дает эти раздражающие сообщения с помощью команды message.

Глядя на ?message, есть соответствующая suppressMessages:

suppressMessages(ymd(x)) 

(Примечание - другие аналогичные функции suppressWarnings, suppressPackageStartupMessages и capture.output, все из которых я должен был использовать в прошлом, чтобы остановить неожиданные биты (я выводил некоторые биты в файл HTML, и они не хотели, чтобы они были в нем)).

+0

Да, я это заметил. То, что я получил, является аргументом функции, который имеет тот же эффект. Решение, которое вы предоставили, довольно неэлегантно. – imanuelcostigan

+0

Я уверен, что это единственный способ - предупреждения имеют опцию через параметр (warn = -1) ', но не сообщения. –

0

Manny, suppressMessages() - единственный способ пойти в данный момент. Но мне нравится ваша идея спора. Я поместил его в список задач для lubridate. Вы также можете использовать strptime(), если у вас есть формат вектора дат-времени.

Смежные вопросы