There are several available functions in R to conduct specific statistical methods or tasks
Section | Description |
---|---|
Description | Provides a brief introduction of the function |
Usage | Provides potential usage of the function |
Arguments | Arguments that the function can take |
Details | An in depth description of the function |
Value | Provides information of the output produced by the function |
Notes | Any need to know information about the function |
Authors | Developers of the function |
References | References to the model and function |
See Also | Provide information of supporting functions |
Examples | Examples of the function |
Several R objects have a known class attached to it. A specialized object designed to be read by generic functions, such as summary()
and plot()
.
For example, the summary()
is a generic for several types of functions: summary.aov()
, summary.lm()
, summary.glm()
, and many more.
Functions | Description |
---|---|
aov() |
Fits an ANOVA Model |
lm() |
Fits a linear model |
glm() |
Fits a general linear model |
t.test() |
Conducts a t-test |
Functions created by the user for analysis
Needs to be ran once to the R environment
Will be lost when R session is closed
function
: used to construct the function
data1
: first data argument that needs to supplied
data2
: second data argument that does not need to be supplied
argument1
: first argument must be supplied to alter function
argument2
: second argument to alter function, set to TRUE
argument3
: third argument that does not need to be supplied
…
: additional arguments supplied to other functions
Create a function for
\[ y = \ln(x^2) \]
Create a function for
\[ f(x) = \left\{\begin{array}{cc} x^3 & x<0\\ x^2 + 5 & \mathrm{otherwise} \end{array} \right. \]
Create a function for
\[ f(x,y) = \left\{\begin{array}{cc} x^3 e^y & x<0\ \\ x^2 + 5 + \ln(y) & \mathrm{otherwise} \end{array} \right. \]
Create the function that allows your to compute the z-score of a specific value x
using the sampling distribution from a set of data (y
vector):
\[ z = \frac{x-\bar y}{\sqrt{s^2_{y}/n_y}} \]
R Packages are used to utilize functions created from the community.
Reticulate is an R package that allows you to utilize python within R.
Rcpp is an R package that allows you to call C++ programs in R.
We will compare variance functions written in cpp, user-built R, and built-in R.
Rcpp code:
R code:
Benchmark Analysis
#> # A tibble: 3 × 6
#> expression min median `itr/sec` mem_alloc `gc/sec`
#> <bch:expr> <bch:tm> <bch:tm> <dbl> <bch:byt> <dbl>
#> 1 var_cpp(x) 1.27µs 2.22µs 423478. 2.93KB 0
#> 2 var_r(x) 2.71µs 3.19µs 268178. 23.75KB 53.6
#> 3 var(x) 4.89µs 5.92µs 162069. 13.73KB 64.9
#> function (x, y = NULL, na.rm = FALSE, use)
#> {
#> if (missing(use))
#> use <- if (na.rm)
#> "na.or.complete"
#> else "everything"
#> na.method <- pmatch(use, c("all.obs", "complete.obs", "pairwise.complete.obs",
#> "everything", "na.or.complete"))
#> if (is.na(na.method))
#> stop("invalid 'use' argument")
#> if (is.data.frame(x))
#> x <- as.matrix(x)
#> else stopifnot(is.atomic(x))
#> if (is.data.frame(y))
#> y <- as.matrix(y)
#> else stopifnot(is.atomic(y))
#> .Call(C_cov, x, y, na.method, FALSE)
#> }
#> <bytecode: 0x5b55f3ae2250>
#> <environment: namespace:stats>
This is an extremely advanced topic. Only do this if you need real speed and efficiency.
\[ f(x) = 2 x^3 - 20x -43 \]