R语言初识

# 创建数据集&基本数据管理

1、向量 创建函数 c() a <- c(1,2,3,4)

a[c(i,j)] :[]给定元素所处位置的数值,即向量a中第i和第j个元素,a[2]第二个元素即2

length(a):返回向量a中元素的个数

2、矩阵 创建函数 X<-matrix(数据,nrow=n,ncol=m)

+使用下标及方括号[]来选择矩阵中的行、列或元素,X[i,],第i行

+将矩阵转化为数据框 dataframe <-as.data.frame(matircname)

3、数组 创建函数 <-array()

4、数据框:将不同类型数据集放入一个矩阵中, mydata<-data.frame(变量1,变量2,。。)

+指明数据框中的变量方式:mydata$变量名

+使用下标及方括号[],mydata[1:i],1到i列

+指定列明,,mydata[c("column1","column2")]

----

+利用函数attach()将数据框添加到R的搜索中,也可以利用with()

+names(dataframe):生成一个包含所有变量名的字符型向量

5、因子:名义型变量及有序型变量称为因子,<-factor(因子),(把因子转译成数字)

6、列表:可以整合向量、矩阵、数据框及其他列表的组合,创建函数 <-list()

7、创建新变量

+ dataframe$varietyname <-dataframe$variety1 +/-/*/ dataframe$varerity2;;

+ attach(dataframe) dataframe$varietyname <-variety1+variety2

detach(dataframe)

+dataframe <-transform(dataframe,variety=variety1+/-/ variety2)

7、变量的重编吗 数据框$变量[dataframe$varity condition] <-expression:

当变量满足什么条件时,将expression赋值给新变量,或者用函数with()

8、变量的重命名 rename() 或name()

9.函数is.na():检测缺失值是否存在

10.na.rm=true,可在计算之前移除缺失值并使用剩余值进行计算

11、na.omit()可以删除所有含有缺失数据的行

12、as.date(X,"input_format")用于将日期以字符串形式输入R中转化为以数值形式存储的日期变量

13、Sys.date()返回当天的日期,date()则返回当前的日期和时间

14、format(x,format="%B %d %Y"):输出指定格式的日期值

15、函数difftime(newday,oldday,units="week/day/year")计算时间间隔,并以星期,天,时等表示

16、函数as.character(),将日期转换为字符型变量

17、order()函数对数据框变量进行排序

18、数据集的横向合并即添加列,使用函数merge(),

+ 利用相同变量内连接 新数据框名 <- merge(dataframeA,dataframeB,by="变量"/by=c("bianliang1","bianliang2"))

+ 无相同变量的连接 cbline( A,B)

19、数据集的纵向合并函数添加观测 rbline(A,B),条件A与和变量数要相同

-----

#数据管理

1、scale()对矩阵或数据框的指定列进行均值为0、标准差为1的标准化

+ newdata <-scale(dataframe)

+ newdata <-transform(dataframe,variety=scale(variety)*SD+M)

2、概率函数

密度函数dorm,

分布函数pnorm,

分位数函数qnorm,

随机数生成函数rnorm

3、函数runif()用来生成0~1区间上服从均匀分布的伪随机数。可以通过set.seed()设定随机数种子

4、根据指定的均值和协方差生成多元正态数据:MASS包中的mvrnorm()函数

mvrnorm(n,mean,sigma),然后使用函数as.data.frame()矩阵转化成数据框

5、函数apply(矩阵/数组/数据框,维度下标,分析函数),对指定的维度(行)进行分析

lapply/sapply将函数应用到list列表中

6、转置:函数t()对一个矩阵或者数据框进行转置

7、数据整合:将多组观测替换为根据这些观测计算的描述性统计量

* 函数aggregate(x待折叠的数据对象,by=list(变量1,变量2),计算描述性统计函数)

* reshape包,融合melt()函数及重铸cast()函数

----

#基本统计分析

一、描述性统计量

1、summary()计算描述性统计量;

2、*Hmisc包中的describe()函数可返回变量和观测的数量、缺失值和唯一值得数目、平均值、分位数以及五个最大的值和最小的值

*pastecs包中stat.desc()函数或者describe()函数计算描述性统计量

二、分组计算描述性统计量

1、分组计算描述性统计量,利用函数aggregate()

+ aggregate(数据集中的[变量组],by=list(变量名=数据集$变量),function(比如mean.sd等)),一次执行一个函数

+一次执行多个函数,使用自定义函数及by(),见P134

2、doBy包中的summaryBY()

3、psych包中的describe.by()

4、reshape包

三、频数表