2017-11-06 10 views
0

프로그래머가 아니기 때문에 지구 환경 밖에서 발생하는 치명적인 오류 (기능, 성능 저하, 반짝임)를 추적 할 수 있습니다. 일반적으로 필자는 글로벌 환경에서 코드를 작성하고 디버그 한 다음 함수 또는 마크 다운 또는 반짝이는 것으로 다시 작성합니다. 불행히도 이것은 성 가시고, 아마 더 좋은 방법이있을 것입니다. 기능이 완료되면 기능 환경이 사라진다는 것을 알고 있습니다. 마크 다운 및 반짝이는 환경이 유사하게 작동합니까? 생성 된 변수의 "스냅 샷"을 얻는 가장 좋은 방법은 무엇입니까? 고려해야 할 완전히 다른 접근법이 있습니까?글로벌 환경 외부에서 생성 된 R 변수보기

+4

이것은 특정 답변을 제공하기 어려운 매우 일반적인 디버깅 조언을 요청하는 것처럼 보입니다. 디버깅하려는 일부 코드의 [reproducible example] (https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)을 제공 할 수 있습니까? 내장 된 디버거'? browser'를 사용 했습니까? 이 질문은 현재 대답하기가 모호한 것 같습니다. – MrFlick

+1

치명적이지 않은 함수를 실행 한 후 일부 변수를 조사하려면 목록에서 해당 변수를 반환 할 수 있습니다.'return (list (...)) – Heikki

+0

반짝이는 응용 프로그램을 디버그하려면이 페이지는 도움이된다 : https://shiny.rstudio.com/articles/debugging.html –

답변

0

반짝이는 응용 프로그램을 디버깅 할 때 내가 선호하는 부분에 browser() 문을 두는 것이 좋습니다.

이제 응용 프로그램을 실행할 때 일시 중지 될 브라우저 문을 찾을 때까지 평상시처럼 실행되며 단계별로 코드를 실행하거나 자신의 코드를 시도해보고이 모든 변수의 값을 볼 수 있습니다 문맥. 작업이 끝나면 평상시처럼 코드를 계속 실행할 수 있습니다.

때로는 새로운 코드를 코드화하는데도이 코드를 사용합니다. 특히 R-Studio의 자동 완성과 함께하면 매우 강력 할 수 있습니다.