在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
5.6 多组数据分析及R实现 5.6.1 多组数据的统计分析 > group=read.csv("C:/Program Files/RStudio/002582.csv") > group=na.omit(group) #忽略缺失样本 > summary(group) 时间 开盘 最高 2013/08/26: 1 Min. :13.6 Min. :13.9 2013/08/27: 1 1st Qu.:18.2 1st Qu.:18.5 2013/08/28: 1 Median :19.6 Median :19.9 2013/08/29: 1 Mean :20.2 Mean :20.6 2013/08/30: 1 3rd Qu.:21.6 3rd Qu.:22.0 2013/09/02: 1 Max. :35.0 Max. :37.0 (Other) :414 最低 收盘 Min. :13.5 Min. :13.6 1st Qu.:18.0 1st Qu.:18.2 Median :19.3 Median :19.6 Mean :19.8 Mean :20.2 3rd Qu.:21.3 3rd Qu.:21.6 Max. :34.0 Max. :34.6
函数var()应用在多组数据上,得到的计算结果是一个协方差阵,其每个元素是各个向量之间的协方差。使用指令cor(group)也得到相同结果。 > options(digits=3) > var(group) 时间 开盘 最高 最低 收盘 时间 NA NA NA NA NA 开盘 NA 13.2 13.8 12.6 13.3 最高 NA 13.8 14.6 13.2 14.0 最低 NA 12.6 13.2 12.1 12.8 收盘 NA 13.3 14.0 12.8 13.6 协方差的大小在一定程度上反映了变量之间的相互关系,但它还受变量本身度量单位的影响,因此我们还要计算相关系数来度量变量之间的线性相关程度。在R中使用函数cor()计算相关系数矩阵。
其中,x,y是计算的对象,当x是一个数据框或列表时Y可以省略:use指定如何处理缺失样本:method给出计算i哪一种相关系数:默认的皮尔逊(Pearson )系数度量线性相关性,如果数据呈现的不是线性关系,而是单调的,则可以用肯德尔(Kendall )或斯皮尔曼( Spearman)相关系数,它们描述的是秩相关性。 5.6.2多组数据的图形分析 R中的函数lowess()通过加权多项式回归对散点图进行平滑,拟合一条非线性的曲线,但其只能适用于二维情况。与之类似的loess()用于处理多维情况。 lowess(x, y = NULL, f = 2/3, iter = 3, delta = 0.01 * diff(range(x))) x,y指定两个向量:f是平滑的跨度,值越大,曲线的平滑程度越高;iter控制应执行的迭代数,值越高平滑越精确,但使用较小的值会使程序跑得比较快。 > attach(group) > plot(最高~最低) > lines(lowess(最低,最高),col="red",lwd=2)
(2)等高线图 有时候数据量很大,散点图上的数据点就会非常集中,不容易看出变量的关系或趋势,这就需要借助二维等高线图来描述。首先利用程序包MASS中的函数kde2d()来估计出二维数据的密度函数,再利用函数contour()画出密度的等高线图。如果不想画出图上的数据标签,可以将参数drawlabels=FALSE去掉。函数kde2d()的使用方法:
其中x,y分别为横轴和纵轴的数据;n指定每个方向上的网格点数量,可以是标量或长度为2的一个正数向量:参数lims表示横纵轴的范围。 > library(MASS) > ?kde2d > a=kde2d(最低,最高) > contour(a,col="blue",main="contour plot")
(3)矩阵散点图 多组数据的图形也可以用散点图来展示,不同在于这里是矩阵散点图。对于一个数据框,R中可以直接使用plot()命令或pairs()绘制矩阵散点图。 > pairs(group) (4)矩阵图 在处理多组数据时,常将各组数据放在一起进行比较,matplot()可将各变量的散点图放在同一个绘图区域中。 > matplot(group,type="l",main="matplot") (5)箱线图 > boxplot(group,cex.axis=.6) (6)星图(雷达图)
(7)折线图 需要自定义函数 (8)调和曲线图 需要自定义函数
|
请发表评论