2011-06-12 4 views
19

저는 R에 대해 상당히 익숙하며 스크립트 파일에 내 자신의 함수 중 일부를 정의 해 왔습니다. 나중에 다른 사용자가 다시 사용하도록 계획하고 있으며 R 함수에 대한 설명 규칙을 찾을 수 없습니다. help("my_function_name")에게 도움을 보이는 방법이 있습니까? 그렇지 않다면 누군가가 스크립트를 출력 (또는 소스를 열어서)하여 주석을 볼 수 있도록 스크립트 파일에 함수를 문서화합니까?R에있는 주석 주석 규칙

감사합니다, (정말 쉬운 기능을 이식하게)

HAMY 당신은 패키지에 기능을 넣어해야합니다

답변

21

함수를 문서화하고 다른 사람들이이 함수에 액세스 할 수있게하는 표준 방법은 패키지를 만드는 것입니다. 패키지가 빌드 검사를 통과하려면 각 함수/데이터 세트에 대해 충분히 자세한 도움말 파일을 제공해야합니다.

체크 아웃 롭 J Hyndman에서이 블로그 게시물은 매우 유용하고 가장 쉬운 방법 중 하나가 나를 따라 가기 위해이었다 http://cran.r-project.org/doc/manuals/R-exts.html#Creating-R-packages

: http://robjhyndman.com/researchtips/building-r-packages-for-windows/

I로 & 컴파일 패키지를 만드는 데 도움을 roxygen를 사용하기 시작했습니다 늦게 : http://roxygen.org/

질문이있을 때 도움을 줄 사람이 많습니다.

7

. 나는 주제를 확장하는 몇 가지 관련 문서에 링크 (나는 그들이 아직도 일하기를 바란다)를 가지고 잠시 전에 그것에 대해 short post을 썼다.

roxygen, inlinedocs을 사용하여 "즉시"도움말 파일을 생성 할 수 있습니다.

+1

roxygen echo입니까? 에코? – Chase

15

당신이 볼 수있는 또 다른 (그리고 하위 키) 대체 기능은 기능에 일부 메타 데이터를 추가하는 comment()attr() 기능입니다.

> attributes(FOO) 
$source 
[1] "function(x,y) {" " x + y "   "}"    

$comment 
[1] "FOO performs simple addition" 

$help 
[1] "FOO expects two numbers, and it will add them together" 

또는 특정 부분 추출 :

FOO <- function(x,y) { 
x + y 
} 

attr(FOO, "comment") <- "FOO performs simple addition" 

#This can be arbitrary. "comment" is special. see ?comment for details. 
attr(FOO, "help") <- "FOO expects two numbers, and it will add them together" 

그런 다음 attributes()를 사용하여 FOO과 관련된 모든 것을 볼 수 있습니다

> attr(FOO, "help") 
[1] "FOO expects two numbers, and it will add them together" 
attr(FOO, "comment") 
[1] "FOO performs simple addition" 

을 그리고의 경우 여기에 신속하고 어리석은 예이다 댓글, 사용 comment() :

> comment(FOO) 
[1] "FOO performs simple addition" 

장기적으로 볼 때 자신의 패키지를 작성하는 것이 오버 헤드 및 시간 투자의 가치가있는 것은 확실하지만 어떤 이유로 단기적으로 실용적이지 않은 경우 - 여기에 또 다른 옵션이 있습니다.

+0

+1 지나치게 복잡하지는 않지만 저장된 작업 공간 및 기능에 대해서는 항상이 작업을 수행하지만 "수행중인 작업"을 빨리 알고 싶습니다. –