Description Usage Arguments Details Value Author(s) References See Also Examples
Returns a data.frame from
RSiteSearch(string, "function")
which can be
sorted and subsetted by user specifications and viewed in an HTML
table. The default sort puts first packages with the most matches
(Count
), with ties broken using the sum of the match scores for
all the hits in that package (TotalScore
), etc.
1 2 3 4 |
string |
A character string. See |
maxPages |
The maximum number of pages to download assuming 20 links per page. |
sortby |
a character vector specifying how the |
verbose |
an integer: if 0, no output is printed to the console. The default 1 displays an initial line with the number of pages to be retrieved and the number of matches obtained; if the number of matches to be downloaded is less, this also is displayed on the initial line. This is followed by a second line counting the pages downloaded. If greater than 1, additional information is provided on the download process. |
... |
ignored |
findFn
searchs the help pages of packages covered
by the RSiteSearch
archives. To restrict the search to only
packages installed locally, use help.search
.
1. Access the RSitSearch
engine with string
,
restricting to "functions", storing Score
, Package
,
Function
, Date
, Description
, and Link
in a
data.frame
.
2. Compute Count
, MaxScore
and TotalScore
for
each Package
accessed. Combine them in a matrix
PackageSummary
.
3. Sort PackageSummary
in the order defined by the occurrance
of c('Count', 'MaxScore', 'TotalScore', 'Package') in sortby
.
4. Merge PackageSummary
with the data.frame
of search
matches.
5. Sort the combined data.frame
as defined by sort.
.
6. Make the result have class c("findFn", "data.frame") and add
attributes matches
, PackageSummary
, string
, and
call
.
7. Done.
an object of class c('findFn', 'data.frame') with columns and attributes as follows:
Columns |
|
Attributes |
|
Spencer Graves, Sundar Dorai-Raj, Romain Francois. Duncan Murdoch suggested the "???" alias for "findFn" and contributed the code for it.
Special thanks to Jonathan Baron and Andy Liaw. Baron maintains the
RSiteSearch data base. Liaw and Baron created the RSiteSearch
function in the utils
package.
http://www.namazu.org/doc/tips.html.en#weight - reference on
determining Score
help.search
to search only installed packages.
RSiteSearch
,
download.file
http://finzi.psych.upenn.edu/search.html for a web
interface to this same search capability with more
general options.
findFn
searches only "Target: Functions" from that
site, ignoring the R-help arcihves.
https://www.r-project.org/search.html for a list of alternative R search capabilities, each of which may be best for different types of inquiries.
findFunction
for a completely different
function with a similar name.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | # Skip these tests on CRAN,
# because they take more than 5 seconds
if(!fda::CRAN()){
z <- findFn("spline", maxPages = 2)
# alternative
zq <- ???spline(2)
all.equal(z, zq)
# To search for 2 terms, not necessarily together:
RSS <- findFn('RSiteSearch function', 1)
matches(RSS)
# To search for an exact string, use braces:
RSS. <- findFn('{RSiteSearch function}', 1)
matches(RSS.) # list(nrow = 0, matches = 0)
# example in which resulting page has some unicode characters
Lambert <- findFn("Lambert")
Lambert
##
## Too many matches
##
fa <- findFn('factor analysis')
# Finds too many matches to process;
# reports Inf matches but returns none.
# When this happens, use a more restrictive search
# check
fa0 <- RSS.[seq(1, length=0),]
attr(fa0, 'matches') <- Inf
attr(fa0, 'PackageSummary') <- PackageSummary(fa0)
attr(fa0, 'string') <- 'factor+analysis'
attr(fa0, 'call') <- call('findFn', string = "factor analysis")
all.equal(fa, fa0)
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.