When trying to solve a problem, part of the process is to research what attempts have been made by others. The most common form of research is to query a search portal. One downside to this approach is that each search portal has its own set of operators or query phrasing that will yield relevant content. As a result, those that have domain knowledge are able to format the search query in a way that is better. Still many queries are not constrained enough to the programming language being used. The goal of searcher
is to attempt to address both needs by providing a convenient pre-specified search interface that tailors the results to R.
To begin using searcher
, first install the package from CRAN.
# Install the searcher package if not already installed
install.packages("searcher")
Once installed, searching with searcher
is done by using one or more of the search_*()
functions. To access these functions, either use a namespace function call of searcher::search_*()
or load the searcher
package and, then, call the function.
# Loads the searcher package
library("searcher")
# Searches using Google for `tips`
search_google("tips")
Within the searcher
package, each search_*()
function has the parameter of rlang = TRUE
. By default, this enforces a search that guarantees R-specific results. If rlang = FALSE
, then the results are generalized.
"r programming"
to the end of the query to constrain the results to be R-specific."r programming"
was selected because it performed best when compared to "rlang"
, "rstats"
, and "r language"
on Google Trends.<query> + [r]
<query> + #rstats
<query>
<query>
<query> language:r type:issue
<query> lang:r
To improve your R-related search query, it has been suggested to use:
"r how to do <x>"
"r how to remove legends in ggplot"
"<package name> <problem>"
"ggplot2 fix x-axis labels."
r
and instead focusing on the package name at the start of the query."r <package-name> <problem> <year> site:<specific-site>
"r ggplot2 center graph title 2018 site:stackoverflow.com
Suggestions here were pooled from discussion on rOpenSci’s slack with Steph Locke and Robert Mitchell.