统计软件学习(本科生课程)    

R 介绍

R软件是统计学家使用的程序设计语言,在目前大数据分析中应用广泛。由于R具有以下一些特点,所以广受青睐。首先R语言便宜,开源软件,完全免费,完全开放,免费保证了其低成本,而开放保证了高质量,新的统计方法很快得到应用并开放为package供人们使用。其次,开放使其统计分析功能完善。第三,作图功能极其强大。第四,作为一门程序语言,可在不同机器和环境中应用,使用灵活。
R软件的安装与运行: 从CRAN社区<www.r-project.org>下载最新的R安装程序,就可以进行安装,安装完成后点击桌面上的R-x.x.x图标就可以启动R软件了。另外,为了方便编辑,我们采用Rstudio作为程序编译器http://www.rstudio.com.

R语言基本操作

这里首先介绍几个重要的函数。设置工作路径setwd(),读入数据read.table(),向量函数c(),矩阵函数matrix(),数据框函数data.frame(),列表函数list().查看数据大小和维数dim(),查看数据结构str(),查看数据前几行head (),数据类型class().

我们以实际数据代入来介绍以上一些基本函数。

1、我们先读入数据,在读入数据之前先清理内存,设置工作路径,所谓工作路径即为统计操作存取的位置,往往数据在此,程序文件也在此。

rm(list=ls())setwd("G:\\work\\课程\\本科课程\\统计应用软件\\统计学实验\\35629统计学实验—SPSS和R软件应用与实例+费宇\\35629统计学实验—SPSS和R软件应用与实例 费宇\\《统计学实验》课件和数据\\data\\chap-9")dat<-read.table("li9.1.txt",header=T)

2、数据保存在数据框dat中,我们再查看dat的结构,为了方便,对其变量名重命名。

str(dat)
## 'data.frame':    31 obs. of  2 variables:##  $ x: num  21989 16357 11690 11565 12378 ...##  $ y: num  15330 12029 8235 8102 9281 ...
dim(dat)
## [1] 31  2
head(dat)
##          x        y## 1 21988.71 15330.44## 2 16357.35 12028.88## 3 11690.47  8234.97## 4 11564.95  8101.84## 5 12377.84  9281.46## 6 12300.39  9429.73
names(dat)<-c("income","expend")class(dat)
## [1] "data.frame"

简单解释:str()显示数据框的结构,dim()显示该数据框有几行几列,head()显示数据框的前六行,names()对数据框的变量重命名,“<-”是R中的赋值符号,c()是r中使用最广泛的函数,向量连接函数。class()显示数据类型。

3、描述数据基本特征。一般而言,描述型统计是对单变量而言,对某一个变量的集中和分散趋势进行描述,即对数据分布进行描述。具体包括最小值min(),最大值max(),范围range(),平均值(),求和(),数据量length(),中位数median(),分位数quantile(),方差var(),标准差sd().

head(dat)
##     income   expend## 1 21988.71 15330.44## 2 16357.35 12028.88## 3 11690.47  8234.97## 4 11564.95  8101.84## 5 12377.84  9281.46## 6 12300.39  9429.73
min(dat$income)
## [1] 10012.34
max(dat$income)
## [1] 23622.73
range(dat$income)
## [1] 10012.34 23622.73
mean(dat$income)
## [1] 13111.39
median(dat$income)
## [1] 11496.11
var(dat$income)
## [1] 12700332
sd(dat$income)
## [1] 3563.753
##均值的计算mean(dat$income)==sum(dat$income)
## [1] FALSE
##方差的计算var(dat$income)==sum((dat$income-mean(dat$income))^2)/(length(dat$income)-1)
## [1] TRUE
var(dat$income)==sd(dat$income)^2
## [1] TRUE

4、数据作图。统计图形在统计应用上极其重要,不仅仅是探索性研究的部分,也是最终演示和数据可视化的结果。可以通过直方图和箱线图查看单变量数据分布,由散点图查看多变量间关系。

hist(dat$income)
hist(dat$income,breaks="sturges",freq=FALSE,col="darkorange",main="hist of income",xlab="income")lines(density(dat$income),col="red")lines(10000:24000,dnorm(10000:24000,mean(dat$income),sd(dat$income)),col="blue")
hist(dat$expend)
boxplot(dat$income,dat$expend)
plot(dat$income,dat$expend)abline(h=mean(dat$expend),v=mean(dat$income),col="blue",lty=3)abline(lm(dat$expend~dat$income),lty=2,col="red")