R-CheatSheet
R CheatSheet
# 查看帮助文档
$ help(sd)
# 查看函数示例
$ example(sd)
写好的
save(gun_data,file="gun_data.Rdata")
可以从
# 安装扩展包
install.packages("fBasics")
# 使用扩展包
library(timeDate)
文件处理
既然要处理数据,肯定要先从数据源读取数据。我们选取最简单的方式,从
times,total, copy
1,122.18138504,48.200
我们使用
gun_data <- read.csv("gun-1128-2.csv",header=T,col.names=c("times","total","copy"))
统计
均值
> mean(gun_data3[[2]])
[1] 103.1747
> mean(gun_data4[[2]])
[1] 113.3303
中位数
均值的问题在于,如果异常值比较大,会把均值拉高或拉低。而中位数是排序后处于中间的数,不受异常值的影响。
> median(gun_data3[[2]])
[1] 101.651
五数
所谓五数,就是最小值,
> fivenum(gun_data3[["total"]])
[1] 98.92649 100.48752 101.65097 105.94518 116.74337
> summary(gun_data3[,"total"])
Min. 1st Qu. Median Mean 3rd Qu. Max.
98.93 100.50 101.70 103.20 105.80 116.70
方差
方差是各样本值与均值的差值的平方的和,反映了数据的离散程度。
var(gun_data3[,“total”])
- [1] 12.70904
标准差
方差的平方根是标准差。
sd(gun_data3[,“total”])
- [1] 3.564974
离差
离差是
mad(x) = 1/qnorm(3/4) * median(abs(x-median(x)))
离差用
偏度
如果结果不符合正态分布,我们希望知道是向左偏还是向右偏,这个值用偏度
求偏度的函数,首先要通过
library(timeDate) skewness(gun_data3[,2])
- [1] 1.109821
attr(,“method”)
- [1] “moment”
skewness(gun_data4[,2])
- [1] 2.40715
attr(,“method”)
- [1] “moment”
从中可以看以,这两组数据都向右偏。
gun_data4 偏得更厉害。
峰度
峰度是判断这个分布是比正态分布的图更尖还是更平。
kurtosis(gun_data3[,2])
- [1] 0.7986081
attr(,“method”)
- [1] “excess”
kurtosis(gun_data4[,2])
- [1] 7.060265
attr(,“method”)
- [1] “excess”
上面的两个分布都
>0 ,说明比正态分布都要尖。