1 高級數據管理
1.1 數值和字符處理函數
(1)數學函數
絕對值函數:abs()
取整函數:floor(),取不大於這個數的整數
取對數函數:log(),log10()
四舍五入函數:round()
(2)統計函數
均值函數:mean()
方差函數:var()
標准差函數:sd()
分位數函數:quantile()
x<-quantile(c(1,2,3,4,5,6,7,8,9,10),c(0.2,0.8))
解釋:c(0.2,0.8)求這些向量的20%的分位數和80%的分位數
(3)概率函數
beta分布:beta
正態分布:norm
柯西分布:cauchy
密度函數:d=
分布函數:p=
分位數函數:q=
生成隨機數:r=
正太密度函數使用:
x<-pretty(c(-3,3),30)
解釋:pretty是最優分等點,使分出來的數字盡量不會太多小數點,c(-3,3)設置了數的范圍為-3到3,30分為30個等份
y<-dnorm(x) #x的密度正太分布函數
plot(x,y,type = "l")
正太分布函數:求1.96這個值在標准正太分布曲線下對應的面積使多少
正太分位數函數:求均值為500,標准差為100的正太分布,它的90%分位點對應的x是多少
生成隨機數:生成10個均值為5,標准差為5的隨機數
例子:
library("MASS")
options(digits = 3)
set.seed(123)
mean<-c(230.7,146.7,3.6)
sigma<-matrix(c(15260.8,6721.2,-47.1,6721.2,4700.9,-16.5,-47.1,-16.5,0.3),nrow=3,ncol=3)
mydata<-mvrnorm(50000,mean,sigma) #生成5萬個均值是mean,協方差是sigma的矩陣
mydata<-as.data.frame(mydata) #把矩陣轉成數據框
names(mydata)<-c("y","x1","x2") #對數據框取名字
(4)字符處理函數
計算字符串長度:nchar()
截取字符串長度:substr()
(5)其他實用函數
長度函數:length()
生成一個序列的函數:seq()
重復函數:rep()
(6)將函數用於矩陣和數據框
四舍五入函數:round()
隨機數矩陣:matrix() ,runif()
隨機生成一個3行4列的12個數字的矩陣
對矩陣求矩陣(整體):mean()
矩陣按行求均值:apply() ,參數設置為1
矩陣按列求均值:apply() ,參數設置為2