R语言介绍
R是为统计计算和绘图而生的语言和环境,是一套开源的数据分析解决方案,有一个庞大且活跃的全球性研究型社区进行维护
R语言的赋值是 <-
R的包
包的安装是指从某个CRAN镜像站点下载它,并将其放入库中的过程
数据集
R语言是一门统计分析语言,而任何数据的统计分析,首先要做的就是按照个人要求的格式,来创建含有研究信息的数据集
R中提供了向量、列表、矩阵、数据框等结构来存储集合数据
.
数据结构
矩阵
a_matrix <-matrix( 1:12,nrow=4,dimnames = list(c("r1","r2","r3","r4"),c("c1","c2","c3")))
dinames也可以省略
another_matrix<- matrix(1:12, nrow=4, ncol=3,byrow=TRUE)
数组和数据框
数组
维度向量(dimension vector): 此向量是一个由正整数所构成的向量,如果它的长度为k,那么该数组就是k维数组
data参数是组成数组的元素,dim是各维的长度组成的向量
three_d_array <-array(1:24, dim=c(4,3,2))
dim1 <-c("A1","A2") dim2 <-c("B1","B2","B3") dim3 <-c("C1","C2","C3","C4") z <-array(1:24, c(2,3,4), dimname=list(dim1,dim2,dim3))
数据框
我们可以使用
Mydataframe<-data.frame(col1, col2, col3,...)
其中列向量col1,col2,col3 可以为任何类型的向量,表示的是存储在数据框中各列的数据。这些向量要求长度相同,每一列的名字可以由函数names指定
patientID <-c(1,2,3,4) age <-c(25,34,28,52) diabetes <-c("Type1","Type2","Type1","Type1") status <-c("Poor","Improved","Excellent","Poor") patientdata <-data.frame(patientID,age,diabetes, status)
可以通过成对使用函数attach()和detach(),或单独使用with()来简化代码
summary(mtcars$mpg) plot(mtcars$mpg,mtcars$disp) attach(mtcars) summary(mpg) plot(mpg,disp)
赋值只在此函数的括号内生效
patientdata <-data.frame(patientID, age, diabetes, status, row.names = patientID)
因子
因子,也称因子型变量,是R中用于对数据进行分类,并将其存储为级别的数据对象。它可以是一个有类别的集合,也可以是一个有序项目的集合。
factor()以一个整数向量的形式存储类别值,整数的范围是[1,k],同时一个由字符串组成的内部变量将映射到这些整数上
patientID <- c(1,2,3,4) age <- c(25,34,28,52) diabetes <- c("Type1", "Type2","Type1","Type1") status <- c("Poor","Improved","Excellent","Poor") diabetes <- factor(diabetes) status <- factor(status, ordered=TRUE) patiendata <- data.frame(patientID, age, diabetes, status) str(patientdata) summary(patientdata)
我们在统计分析中经常会用到分类,所以因子是R语言统计分析的基础,我们可以利用因子来生成各种统计信息
列表
列表是R中最为复杂的数据类型,扮演者一个至关重要的角色,是数据框和面向对象编程的基础
列表中的各个元素称为列表项,列表项的数据类型可以不同,长度可以不同
g <- "My First List" h <- c(26,18,25,38) j <- matrix(1:10, nrow=5) mylist <- list(title=g, ages=h,j)
数据的输入和数据集标注
数据的输入和数据集标注
从键盘输入数据
mydata <-data.frame(age=numeric(0),gender=character(0),weight=numeric(0)) mydata <-edit(mydata)
从带分隔符的文本文件中导入数据
grades <-read.table("studentgrades.csv",header=TRUE,sep=",",row.names="STUDENTID")
导入Excel数据
workbook <-"C:/Users/admin/Desktop/test.xlsx" mydataframe <-read.xlsx(workbook,1) mydataframe
导入SPSS数据
library(Hmisc) mydataframe <-spss.get("1.sav",use.value.labels = "TRUE")
导入SAS数据
访问数据库管理系统
除此之外,R中还提供了导入XML数据,导入netCDF数据,导入HDF5数据,和从网页抓取数据导入的方法
数据集标注