【R语言】数学运算
一、基础运算
R语言中能实现加、减、乘、除、求模、取整、取绝对值、指数、对数等运算。
x <- 2
y <- 10
# 求模
y %% x
# 整除
y %/% x
# 取绝对值
abs(-x)
# 指数运算
y ^x
y^1/x
#对数运算
log(x) #log()函数默认情况下以 e 为底
双等号“==”的作用等同于identical()函数,表示比较两个对象是否相等。
“!=”表示判断两个对象是否不相等。
二、向量运算
向量的运算都是对应于它的每个元素进行的。
x <- 1:4
y <- 5:8
# 四则运算
x + y
x * y
# 指数运算
x^y
# 逻辑运算
x == y # 判断x和y的相对应的元素是否相等
identical(x,y) # 判断x与y是否一致
求向量的统计值:
# 生成50个服从正态分布的随机数
x <- rnorm(50)
# 求平均值
mean(x)
# 求标准差
sd(x)
# 求和
sum(x)
# 求积
prod(x)
# 求最小值
min(x)
# 求最大值
max(x)
# 求全距
range(x)
# 求四分位数
quantile(x, probs=c(0.25,0.50,0.75))
求集合运算:
x <- c(1,2,3,4,5,6,7)
y <- c(5,6,7,8,9)
# 求组合数
choose(7,3)
# 求阶乘:3!
factorial(3)
# 求排列数
choose(7,3) * factorial(3)
# 求并集
union(x,y)
# 求交集
intersect(x,y)
# 求差集
setdiff(x,y)
# 求唯一值
unique(x)
# 求y中有哪些元素在x中
y %in% x
三、矩阵运算
x <- matrix(1:9,3,3)
y <- matrix(1:12,3,4)
# 求转置
t(y)
# 求矩阵乘积
x %*% y
# 求逆矩阵
solve(y)
# 求行列式
det(x)
# 求特征值和特征向量
eigen(x)