常用的数据类型及处理

● 向量(X)

● 赋值 
assign(向量名, X)。 向量名<- X X ->向量名 ● 运算 
加(+),减(-),乘(*),除(/),整除(%/%),求余数(%%) exp(),log,cos,tan,sqrt… 最大值:max(X) 最小值:min(X) 范围:range(X) 
求和:sum(X) 
连乘积(阶乘):prod(X) 个数:length(X) 中位数:media(X) 均价:mean(X) 方差:var(X) 标准差:sd(X) 排序:sort(X) ● 序列的生成 
从a开始到b结束逐项+(-)1的序列:a:b 
等间隔函数:seq(from=value1,to=value2,by=value3) 重复函数:rep(X,times) 


● 逻辑向量 
真:TRUE(T) | 假:FALSE(F) 
运算符:<,<=,>,>=,==(等于),!=(不等于) ● 缺失数据 
NA 

判断缺失值:
is.na(X)
#检测是否不确定:
is.nan(X)#T:不确定,F:确定
#检测是否有限:
is.finite(X)  #T有限,F无限
#检测是否无穷:
is.infinite(X)  #T无穷,F有限 ● 字符型向量 
#字符串连接:
paste(X,Y) # ● 复数向量 
#生成复数:
complex() #● 对象
#是否为数值:
is.numeric(X)
#是否为字符:
is.character(X)
#类型转换:
as.character(X)
as.numeric(X) 
#改变长度:
length(X) <- 新长度
#用空值填充或去掉多的 返回对象的属性:
attributes(object)
#存取对象的属性:
attr(object,”属性名”) 

var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'; document.body.appendChild(script);

 

● 因子

#把一个向量编码为一个因子:
factor()
#因子的水平(感觉像是不同的值):
levels()
#各类数据的频数:
table()
#分组运算函数(F(x) group by INDEX):
tapply(X,INDEX,FUN=F)
#产生因子:gl(水平数,重复次数,长度,因子水平,有序标识)
 
#● 数组和矩阵(M)
#定义或获取数组的维度:
dim(M)<-c(行,列)。
#直接构造多维数组:
array(data,dim,dimnames)
#例:
X<-array(1:20,dim=c(4,5))
#构造矩阵:
matrix(data,nrow,ncol,byrow,dimnames)
#例:
X<-matrix(1:20,nrow=4,ncol=5,byrow=FALSE)
#矩阵的转置:
t(M)
#如:
A<-matrix(1:6,nrow=2);A;t(A);
#方阵行列式的值:
det()
#例:
det(matrix(1:4,ncol=2))
#矩阵的行数:
nrow(M)
#矩阵的列数:
ncol(M)
#矩阵的合并:
#横向拼:
cbind()
#纵向拼:
rbind()
#矩阵的拉直(把矩阵变向量):
as.vector()
#例:
A<-matrix(1:6,nrow=2); A;as.vector(A);
#数组的维名字:
dimnames(M)<-list(c(..),c(….))
#例:
X<-matrix(1:6,ncol=2,byrow=T);dimnames(X)<-list(c("one","two","three"),c("First","Second"));X;
#数据的行|列名访问:
rownames(M)
colnames(M)
#对某维或者若干维进行某种运算:
apply(M,某维,FUN)
#例:
A<-matrix(1:6,nrow=2);apply(A,1,sum)
 
#● 列表(L)
#构造:
list()
#例如:
Lst<-list(name="davy",wife="taotao",no.children=3,child.age=c(4,7,9));Lst; Lst[[2]]; Lst[["child.age"]];Lst[[4]][2];Lst$name;
 
#● 数据框
#构造数据框:
data.frame()
#转换为数据框:
as.data.frame()
#数据框去属性:
attach()
#数据框加属性:
detach()
 
#● 读写数据文件
读表格形式的文件:
read.table("fileName"[,header=T|F,][sep,][quote]...)
#读纯数据的文件:
scan()
#读SPSS文件:
read.spss()
#读Excel文件:
read.delim()
#读CSV文件:
read.csv()
#写数据:
write()
#写表格数据:
write.table()
write.csv()

 

● 读取数据库操作通过ODBC: 
1.创建链接:

conn<-odbcConnect("ODBCname",uid,pwd)

 2.查询数据:

sqlQuery(conn,"SQL")

var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'; document.body.appendChild(script);

3.关闭链接:

odbcClose(conn)

● 控制流 
分支:

if(condition){}/else if(condition){} /else{}

循环:

for(name in expr_1){ expr_2} | while(condition){expr} | repeat { expr;break } 中止语句:break 空语句:next

  

posted on 2016-03-23 14:59  MartinChau  阅读(372)  评论(0编辑  收藏  举报

导航