R 스크립트에서 전체적으로 경고를 표시하지 않는 방법


174

경고를 던지는 긴 R 스크립트가 있는데 무시할 수 있습니다. 사용할 수 있습니다

suppressWarnings(expr)

단일 진술. 그러나 R에서 전 세계적으로 경고를 표시하지 않으려면 어떻게해야합니까? 이것에 대한 옵션이 있습니까?

답변:


228

당신은 사용할 수 있습니다

options(warn=-1)

그러나 전 세계적으로 경고 메시지를 끄는 것은 좋은 생각이 아닙니다.

경고를 다시 켜려면

options(warn=0)

(또는 기본값이 무엇이든 warn, 이 답변을 참조하십시오 )


5
이것은 효과가 있지만 2015 년 9 월 22 일의 Francesco Napolitano의 접근 방식은보다 안전하고 전 세계적으로 적용 가능한 방법입니다.
Andy Clifton

@Andy에 동의하며 그의 답변은 허용 된 것으로 표시되어야합니다.
JASC

106

당신은 원합니다 options(warn=-1). 그러나 warn=0가장 안전한 경고 수준은 아니며 특히 스크립트 나 함수 내에서 현재 경고 수준으로 가정해서는 안됩니다. 따라서 경고를 일시적으로 끄는 가장 안전한 방법은 다음과 같습니다.

oldw <- getOption("warn")
options(warn = -1)

[your "silenced" code]

options(warn = oldw)

41

나는 교체 한 printf에 전화로 전화를 warning이제 C 코드에서. 내일 밤에 사용할 수있는 버전 2.17.2에서 효과적입니다. 그런 다음 suppressWarnings()위에서 언급 한 방법이나 다른 방법으로 경고를 피할 수 있어야 합니다.

suppressWarnings({ your code })

6
이것이 올바른 방법입니다. 답변으로 표시해야합니다.
Denis

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.