参考:R语言学习–特殊符号的意义:https://www.jianshu.com/p/76d1cf475827
1、常用符号含义
首先是一些符号的含义,包括特殊符号和加减乘除等。
符号 | 含义 | 示例 |
---|---|---|
<- | 赋值 | a<-1 |
= | 赋值 | a=1 |
<<- | 向上一环境层写入变量 | 暂不懂 |
== | 是否相等 | 1==2 |
!= | 是否不等 | 1!=2 |
` | , | |
&, && | 逻辑“与” | |
! | 逻辑“非” | !T=FALSE |
' 或" | 引起来表示字符串 | a='1' |
+ | 加法 | 1+2=3 |
- | 减法 | 2-1=1 |
* | 乘法 | 2*2=4 |
/ | 除法 | 4/2=2 |
^ | 指数 | 2^3=8 |
%% | 求余 | 7%%2=1 |
%/% | 取整 | 7%/%2=3 |
: | 等差数列 | a=1:5 (a=c(1,2,3,4,5) ) |
[] | 提取数据 | a[3]=3 |
%in% | 是否包含 | 2%in%a=TRUE |
T | yes | TRUE |
F | no | FALSE |
NAN | 不是数 | Not a number |
NA | 数据缺失 | Not available |
NULL | 不存在 | empty |
Inf | 无穷大 | Infinity |
~ | 用于构建公式 | y~x1+x2 |
$ | 数据框索引某列 | |
@ | 从R的类实例里面读取数据 | bg=x@colors |
# | 其后内容为注释 | |
:: | 包名字::函数名 | |
... | 通常用于定义函数时接收额外的参数,传给内部调用的其它函数。 | |
` | 用于不规则变量名 | |
!! | 通常配合sym 用于需要传入变量的函数中 | |
%>% | 管道符,上一个函数的输出传递给下一个函数作为输入。来源于magrittr包,同类型的还有%T>%,%$% 和 %<>% ,具体查阅相应帮助文档 |
下面是一些符号的使用示例:
# !!的使用
xvariable_en = sym(xvariable)
yvariable_en = sym(yvariable)
p <- ggplot(data, aes(!!xvariable_en, !!yvariable_en))
2、常用数学函数
下面是一些常用的数学函数,实际上,那些基础的函数和其他语言有极大的相似之处。
名称 | 含义 | 示例 |
---|---|---|
sign() | 取符号 | sign(-3)=-1 |
abs() | 求绝对值 | abs(-3)=3 |
sqrt() | 开平方 | sqrt(4)=2 |
floor() | 向下取整 | floor(3.4)=3 |
ceiling() | 向上取整 | ceiling(3.4)=4 |
round(x, n) | 小数点后n位四舍五入 | round(3.1415926,4)=3.1416 |
trunc() | 按绝对值向下取整 | trunc(-3.2)=-3 |
signif(x, n) | 四舍五入保留n位有效数字 | signif(3.1415926,4)=3.142 |
exp(n) | e n e^n en | exp(2)=7.389056 |
log(x, a) | l o g a x log_ax logax | log(8,2)=3 |
log2(x) | l o g 2 x log_2x log2x | log2(8)=3 |
log10(x) | l o g 10 x log_{10}x log10x | log10(100)=2 |
log1p(x) | l n ( 1 + x ) ln(1+x) ln(1+x) | log1p(1)=0 |
expm1(x) | e x − 1 e^x-1 ex−1 | expm1(1)=1.718282 |
pi | π \pi π | 3.141593 |
sin, cos, tan | 求一个弧度的正弦 /余弦 /正切值 | sin(pi)=0 |
asin, acos, atan | 求正弦值、余弦值、正切值对应的弧度 | asin(1)=1.570796 |
atan2(y, x) | 求取原点到指定(x, y) 点组成的向量的反正切值 | atan2(2,1)=1.107149 |
sinpi(x),cospi, tanpi | 类似 s i n ( π ∗ x ) sin(\pi*x) sin(π∗x) | sinpi(0.5)=1 |
sinh, cosh, tanh | 计算双曲正弦值、双曲余弦值、双曲正切值 | s i n h ( x ) = e x − e − x 2 sinh(x)=\dfrac{e^x-e^{-x}}{2} sinh(x)=2ex−e−x |
asinh, acosh, atanh | 计算反双曲正弦值、反双曲余弦值、反双曲正切值 | |
Re() | 取复数的实部 | Re(2+1i)=2 |
Im() | 取复数的虚部 | Im(2+1i)=1 |
Mod() | 取复数的模 | Mod(2+1i)=2.236068 |
Arg() | 取复数的弧度 | Arg(1+1i)=0.7853982 |
Conj() | 取复数的共轭复数 | Conj(1+1i)=1-1i |
factorial(x) | x ! x! x! | factorial(4)=24 |
choose(n, k) | C n k = n ! k ! ( n − k ) ! C_n^k=\dfrac{n!}{k!(n-k)!} Cnk=k!(n−k)!n! | choose(7,2)=21 |
polyroot(x) | 求解方程 ( 1 + x ) n = 0 (1+x)^n=0 (1+x)n=0的复数根,polyroot函数需要使用二项式系数作为参数 | polyroot(choose(2, 0:2))=-1-0i, -1+0i |
gamma(x) | ( x − 1 ) ! (x-1)! (x−1)! | gamma(4)=6 |
digamma(x) | 取gamma函数的一阶导数 | digamma(4)=1.256118 |
trigamma(x) | 取gamma函数的二阶导数 | trigamma(4)=0.283823 |
psigamma(x, deriv = 0) | 计算更高阶的gamma函数的导数 | 目前不懂,暂时搁置 |
beta(a, b) | γ ( a ) × γ ( b ) / γ ( a + b ) \gamma(a)\times\gamma(b)/\gamma(a+b) γ(a)×γ(b)/γ(a+b) | beta(2,3)=0.08333333 |
lchoose、lfactorial、lgamma、lbeta | 求解choose、factorial、gamma、beta的对数 | |
注:表格尾部的许多函数,笔者也没有使用过,所以以后使用过程中遇到什么问题,需进行补充和拓展! |
3、常用的统计函数
函数 | 描述 |
---|---|
mean(x) | 平均值 |
median(x) | 中位数 |
sd(x) | 标准差 |
var(x) | 方差 |
mad(x) | 绝对中位数 |
quantile(x,probs) | 分位数 |
range(x) | 值域 |
sum(x) | 求和 |
diff(x,lag = n) | 滞后差分,滞后n项 |
min(x) | 最小值 |
max(x) | 最大值 |
scale(x,center = T,scale = T) | 中心化(center = T)或标准化(center = T;scale = T) |
上面的这些统计函数若处理含有NA的数据,可以使用函数的na.rm=T 属性,将NA 删除。 |