R语言学习笔记
第1章 R的使用
1.R语句由函数和赋值。R使用<-作为赋值符号:
x<- rnorm(5) #创建一个名为x的向量对象,x包含5个符合标准正太分布的随机偏差# rnorm(5) -> x与x<- rnorm(5),这两个语句等价。
2.简单的R会话:
研究上述10名婴儿的:(1)体重分布;(2)体重和月龄的关系 代码清单:
age <- c(1, 3, 5, 2, 11, 9, 3, 9, 12, 3)#使用函数c()以向量的形式输入月龄数据#
weight <- c(4.4, 5.3, 7.2, 5.2, 8.5, 7.3, 6, 10.4, #使用函数c()以向量的形式输入体重数据# 10.2, 6.1)
mean(weight)#使用函数mean()求体重平均值# sd(weight)#使用函数sd ()求体重标准差#
cor(age, weight)#使用函数cor()求体重与月龄之间相关系数#
plot(age, weight)#使用函数plot(),以图形形式表现体重与月龄之间关系# # q()#使用函数q ()结束程序#
输出结果:
1
第2章创建数据集
1.访问向量中元素
通过方括号中给定元素所处的数值,可以直接访问向量中的元素。例如,a[c(3,5)],访问向量a中的第3个和第5个元素。 代码清单:
a <- c(1, 2, 5, 3, 6, -2, 4) a[3]
a[c(1, 3, 5)]
a[2:6]#访问从第2个元素到第6个元素# 输出结果:
2.创建矩阵
矩阵都是二维的,和向量类似,矩阵中也仅能包含一种数据类型。
通过函数matrix创建矩阵,一般格式如下:
myymatrix<- matrix(vector, nrow=number_of_rows, #nrow(行)# ncol=number_of_columns, #ncol(列)#
byrow=logical_value,#byrow=true(按行填充)/byrow=false(默认:按列填充)# dimnames=list(char_vector_rownames,char_vector_colnames))
#dimnames包含了可选的以字符型向量表示的行名称和列名称#
代码清单①:
y <- matrix(1:20, nrow = 5, ncol = 4) #输出从1到20,5行4列,默认按列进行填充# y
输出结果:
代码清单②:
cells <- c(1, 26, 24, 68) #向量赋值# rnames<- c(\ #行名称# cnames<- c(\ #列名称#
mymatrix<- matrix(cells, nrow = 2, ncol = 2, byrow = TRUE, #2行2列,按行填充# dimnames = list(rnames, cnames)) #行列名称赋值# mymatrix
2
输出结果:
如果按照列填充:
cells <- c(1, 26, 24, 68) rnames<- c(\cnames<- c(\
mymatrix<- matrix(cells, nrow = 2, ncol = 2, byrow = FALSE, dimnames = list(rnames, cnames)) mymatrix
输出结果:
我们可以使用下标和方括号来选择矩阵的行、列或元素。X[i,]指矩阵x中的第i行,X[,j]指出第j列,x[i,j]指第i行第j个元素。选择多行或多列时,下标i和j可为数值型向量,如下代码清单演示:
代码清单③:
x <- matrix(1:10, nrow = 2) #没有对行、列名称进行命名,输出结果自动生成# x
输出结果:
代码清单④:
x[2, ] #输出矩阵x中第2行#
x[,2] #输出矩阵x中第2列#
3
x[1,4] #输出矩阵x中第1行,第4列#
x[1,c(4,5)] #输出矩阵x中第1行,第4、5列#
3.创建数组
数组(array)与矩阵类似,但是维度可以大于2。数组可通过array函数创建,形式如下:
myarray<-array(vector,dimensions,dimnames) #vector包含了数组中的数据,dimensions是一个数值型向量,给出了各个维度下标的最大值,dimnames是可选的、各维度名称标签的列表#
代码清单:
dim1 <- c(\
dim2 <- c(\
dim3 <- c(\
z <- array(1:24, c(2, 3, 4), dimnames = list(dim1, dim2, dim3))
#将1~24按照列排方式,排列在4个2行3列,创建成三维(2×3×4)数值型数组# z
输出结果:
4.创建数据框
数据框是R中最常见的数据结构,数据框中不同的列可以包含不同模式的数据。
mydata<-data.frame(col1,col2,col3,…) #列向量col1,col2,col3,…可为任何类型,每一列的名称可由names指定。
代码清单①:(创建)
patientID<- c(1, 2, 3, 4)
age <- c(25, 34, 28, 52)
diabetes <- c(\status <- c(\
4
patientdata<- data.frame(patientID, age, diabetes, status) patientdata
输出结果:
代码清单②:(选取数据框中的元素)
patientdata[1:2]
#或者patientdata[c(\结果一样#
代码清单③:(选取数据框中的列向量)
patientdata$age #$表示选取特定列向量#
代码清单④:(table生成列联表)
table(patientdata$diabetes,patientdata$status)
5.因子的使用
factor()以一个整数向量的形式存储类别值,整数的取值范围是[1…k],同时一个由字符串(原始值)组成的内部向量将映射到这些整数上。
如:向量:diabetes<-c(“Type1”,“Type2”,“Type1”,“Type1”) diabetes<-factor(diabetes)将此向量存储为(1,2,1,1),并在内部将其关联为1=Type1和2=Type2(具体赋值根据字母顺序而定)
要表示有序型变量,需要为函数factor()指定参数ordered=TRUE。给定向量:
status<-c(“Poor”,“Improved”,“Excellent”,“Poor”)
语句status<-factor(status,ordered=TRUE)会将向量编码为(3,2,1,3),并在内部将这些值关联为1=Excellent、2=Improved以及3=Poor。另外,针对此向量进行的任何分析都会将其作为有序型变量对待,并自动选择合适的统计方法。
5
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新综合文库R语言学习之入门和创建数据集全文阅读和word下载服务。
相关推荐: