2017-09-19 1 views
3

내 패키지에서 사용하는 기본, 통계 등 패키지 기능에 필요한 R 버전을 찾을 수있는 방법이 있습니까?기본 패키지의 최소 필수 R 버전?

예를 들어, 나는 잔여 SD를 얻기 위해 자신의 코드를 사용했고, 나중에 stats::sigma()으로 바꾸었다. 그러나 sigma()에는 R 버전이 3.3 이상이어야합니다. 내 패키지는 R> = 3.2에 의존해야하며 패키지 확인도 CRAN 제출도 내 DESCRIPTION 파일의 R 종속성에 대한 잘못된 사양에 대해 경고하지 않습니다.

+0

[R 웹 사이트]에 변경 사항이 있습니다. 그러나 "함수가 주어 졌을 때, 그것이 언제 소개되었는지 어떻게 알 수 있습니까?" –

+0

예, 잘 했어! R> 3.2 (또는 R> 3.0)를 필요로하는 많은 기능이 없을 수 있지만 예를 들어. 'startsWith()'는 또 하나의 후보이며, 늦은 R 버전이 필요하다는 것을 모르고있었습니다. – Daniel

답변

0

방법이없는 것 같습니다 프로그래밍 방식으로 신뢰할 수있는 방식으로 수행 할 수 있습니다. 일반적으로 그것을하는 가장 쉬운 방법은 뉴스를 처리하는 것입니다. 아래 코드는 NEWS에서 'new function'이 포함 된 모든 문장을 추출합니다.

library(data.table) 
library(stringr) 
db <- as.data.table(news()) 
db <- db[Category == "NEW FEATURES" & grepl("[Nn]ew function[^a]", Text), .(Text, Version)] 
db[, Text := str_replace_all(Text, "\n", "")] 
db[, Text := str_extract(Text, "[Nn]ew function.*?\\.(?=($|))"), by = Version] 

> db 
                                                       Text Version 
1:                                              new function .valid.factor(). 3.4.0 
2:                      New function check_packages_in_dir_details() in package tools for analyzing package-check log files to obtain check details. 3.4.0 
3:                        New functions validEnc() and validUTF8() to give access to the validity checks for inputs used by grep() and friends. 3.3.0 
4:                                   New function strrep() for repeating the elements of a character vector. 3.3.0 
5:                         New function grouping() returns a permutation that stably rearranges data so that identical values are adjacent. 3.3.0 
6:                                  New function .traceback() returns the stack trace which traceback() prints. 3.3.0 
7:         New functions makevars_user() and makevars_site() in package tools to determine the location of the user and site specific Makevars files for customizing package compilation. 3.3.0 
8:                        New function dir.exists() in package base to test efficiently whether one or more paths exist and are directories. 3.2.0 
9:                               new function debuggingState() has been added, allowing to temporarily turn off debugging. 3.2.0 
10:                           New function extSoftVersion() to report on the versions of third-party software in use in this session. 3.2.0 
11:                                      New function isNamespaceLoaded() for readability and speed. 3.2.0 
12:                                     New function trimws() for removing leading/trailing whitespace. 3.2.0 
13: New function hsearch_db() in package utils for building and retrieving the help search database used by help.search(), along with functions for inspecting the concepts and keywords in the help search database. 3.2.0 
14:                           New function .getNamespaceInfo(), a no-check version of getNamespaceInfo() mostly for internal speedups. 3.2.0 
15:                                   New function toTitleCase() in package tools, tailored to package titles. 3.2.0 
16:                           New function pcre_config() to report on some of the configuration options of the version of PCRE in use. 3.1.3 
17:                                New function icuGetCollate() to report on the ICU collation locale in use (if any). 3.1.2 
18:            new function promptImport(), to generate a help page for a function that was imported from another package (and presumably re-exported, or help would not be needed). 3.1.1 
19:                       New function anyNA(), a version of any(is.na(.)) which is fast for atomic vectors, based on a proposal by Tim Hesterberg. 3.1.0 
20:                                new function find_gs_cmd() in the tools package to locate a GhostScript executable. 3.1.0 
21:                       New functions cospi(x), sinpi(x), and tanpi(x), for more accurate computation of cos(pi*x), etc, both in R and the C API. 3.1.0 
22:                                    New function agrepl() which like grepl() returns a logical vector. 3.1.0 
23:                                    new function, La_version(), to report the version of LAPACK in use. 3.0.3 
24:                       New functions cite() and citeNatbib() have been added, to allow generation of in-text citations from "bibentry" objects. 3.0.0 
25:                              new function rep_len() analogous to rep.int() for when speed is required (and names are not). 3.0.0 
26:                 New functions bitwNot(), bitwAnd(), bitwOr() and bitwXor(), using the internal interfaces previously used for classes "octmode" and "hexmode". 3.0.0