[R] debug하기

R 2016. 3. 3. 17:31



R언에서 다양한 함수를 실행하다가 내부에서 어떻게 문제를 일으키는지 디버그를 하고 싶을 때 debug()를 사용한다.


예시 소스는 다음과 같다. 

test_function <- function(x, y) {

  x = x + 1

  y = y + 1

  x = x * x;

  y = y * x;

  y

  invisible(y)

}


debug(test_function)


test_function(2, 3)



또는 R 이나 RStudio에서 실행하면.. 디버그 모드로 전환한다.


R 실행


> test_function <- function(x, y) {

+ x = x + 1

+ y = y + 1

+ x = x * x;

+ y = y * x;

+ y

+ invisible(y)

+ }

> debug(test_function)

> test_function(2, 3)

debugging in: test_function(2, 3)

debug at #1: {

    x = x + 1

    y = y + 1

    x = x * x

    y = y * x

    y

    invisible(y)

}

Browse[2]> n

debug at #2: x = x + 1

Browse[2]> n

debug at #3: y = y + 1

Browse[2]> n

debug at #4: x = x * x

Browse[2]> n

debug at #5: y = y * x

Browse[2]> n

debug at #6: y

Browse[2]> n

debug at #7: invisible(y)

Browse[2]> n

exiting from: test_function(2, 3)




반면, RStudio는 IDE 화면의 Debug 창이 뜬다. 비슷하게 사용할 수 있다. 

그러나 작은 실수에도 Debug 창이 이슈가 생겨서 디버그 모드가 종료가 안될 수 있다..  (0.99 버전 사용중)



'R' 카테고리의 다른 글

[R] 상위 N(top n) 구하기  (0) 2016.04.18
RStudio 실행 안되는 문제 해결하기  (0) 2016.03.03
[R] invisible()  (0) 2016.03.02
[R] ... 사용하기  (0) 2016.03.02
[R] R에서 시간, 날짜 다루기 (as.Date, Sys.time)  (1) 2016.02.27
Posted by '김용환'
,