ÌáÈ¡¾ØÕóϱêºÍÔªËØ
X<-matrix(1:6,2,3) #ÓÃ1µ½6½¨Á¢Ò»¸ö2x3µÄ¾ØÕó X[2,2] #ÌáÈ¡XµÄ£¨2,2£©Î»µÄÒ»¸öÔªËØ X[2,] #ÌáÈ¡XµÄµÚ¶þÐÐ
X[,2] #ÌáÈ¡XµÄµÚ¶þÁУ¨°´×îСÐлòÁÐÊýÏÔʾ£© X[,2,drop=FALSE] #ÌáÈ¡XµÄµÚ¶þÁУ¬°´ÔÑùÏÔʾ X[,c(2,3)] #ÌáÈ¡XµÄµÚ¶þ¡¢ÈýÁÐ X[-1,] #È¥µôµÚÒ»ÐÐ X[,-2] #È¥µôµÚ¶þÁÐ
X[,3]<-NA #½«µÚÈýÁÐÉèΪȱʧֵ X[is.na(X)]<-1 #È±Ê§ÖµÌæ»»Îª1
¾ØÕóµÄÔËËã
X<-matrix(1:6,2,3) #ÓÃ1µ½6½¨Á¢Ò»¸ö2x3µÄ¾ØÕó t(X) #תÖþØÕó diag(X) #¶Ô½ÇÏòÁ¿
¾ØÕó°´ÐлòÁкϲ¢
m1<-matrix(1,nr=2,nc=2) #½¨Á¢Ò»¸ö2x2µÄÈ«1¾ØÕó m2<-matrix(2,nr=2,nc=2) #½¨Á¢Ò»¸ö2x2µÄÈ«2¾ØÕó rbind(m1,m2) #¾ØÕó°´Ðкϲ¢ cbind(m1,m2) #¾ØÕó°´Áкϲ¢
¾ØÕóÔËËã
m2*m2 #¾ØÕó°´µ¥Ôª³Ë»ý£¬Ò²¼´µã³Ë rbind(m1,m2)%*?ind(m1,m2) #¾ØÕó³Ë»ý1 cbind(m1,m2)%*%rbind(m1,m2) #¾ØÕó³Ë»ý2
X<-matrix(1:4,2) #½¨Á¢Ò»¸ö2x2µÄ1µ½4µÄÐÐÁÐʽ det(X) #XµÄÐÐÁÐʽ
cov(X) #Çó³öX¸÷ÁÐÖ®¼äµÄз½²î¾ØÕó
x<-c(1,2) #Éèx y<-c(3,4) #Éèy
cor(x,y) #Ïà¹ØÏµÊý¾ØÕó
Çó¾ùÖµ¡¢ÖÐλÊý
m<-matrix(rnorm(n=12),nrow=3) #½¨Á¢Ò»¸ö3ÐеÄ12¸ö·þ´Ó±ê×¼Õý̬·Ö²¼µÄËæ»úÊý¾ØÕó apply(m,MARGIN=1,FUN=mean) #°´ÐÐÈ¡¾ùÖµ apply(m,MARGIN=2,FUN=mean) #°´ÁÐÈ¡¾ùÖµ
scale(m,center=T,scale=T) #ÖÐÐÄ»¯Ëæ»ú±äÁ¿
row.med<-apply(m,MARGIN=1,FUN=median) #¼ÆËã¾ØÕómÿÐеÄÖÐλÊý sweep(m,MARGIN=1,STATS=row.med,FUN= \ #ÿÁи÷×Ô¼õÈ¥ÁÐÖÐλÊý
½¨Á¢Êý¾Ý¼¯Á½ÖÖ·½·¨£¨data frame£©
x=c(42,7,64,9) #½¨Á¢Êý¾ÝÏòÁ¿x y=1:4 #½¨Á¢Êý¾ÝÏòÁ¿y 1¡¢Ö±½Ó·¨
z.df=data.frame(INDEX=y,VALUE=x) #½¨Á¢Ò»¸ö2ÁбäÁ¿µÄÊý¾Ý¼¯£¬·ÅÈëz.df weight<-c(70.6,56.4,80,59.5) #½¨Á¢Êý¾ÝÏòÁ¿weight x<-c(\ #½¨Á¢×Ö·ûÏòÁ¿x
wag<-data.frame(weight,age=x) #¹¹½¨Êý¾Ý¼¯£¬±äÁ¿Êý¾Ý³¤¶È²»Í¬Ê±£¬»á×Ô¶¯Ñ»·Ìî³äÊý¾Ý
x<-1:4; y<-2:4 #½¨Á¢Êý¾ÝÏòÁ¿x,y
data.frame(x,y) #Èô±äÁ¿³¤¶È²»ÊÇÒ»¸öÖÜÆÚ£¬Ôò³öÏÖ´íÎó 2¡¢´ÓÍⲿÊý¾ÝÎļþ¶ÁÈ¡
foo<-read.table(file=\
ÊÊÓÃÓÚÊý¾Ý¼¯µÄº¯Êý£º
attach(Puromycin) #¼¤»îÊý¾Ý¼¯
summary(Puromycin) #ÏÔʾÖ÷ÒªµÄÃèÊöÐÔͳ¼ÆÁ¿
ÀàËÆµÄͳ¼Æ¼ÆË㺯Êýmax(),min(),median(),var(),sd(),sum(),cov(),cor()ͬÑùÊʺÏÓÚÊý¾Ý¼¯£¬ÒâÒåÏàͬ¡£
pairs(Puromycin, panel=panel.smooth) #³É¶ÔÊý¾ÝÉ¢µãͼ
Êý¾Ý¼¯Ï±êÓë×Ó¼¯µÄÌáÈ¡£º
Puromycin[1,1] #ÌáÈ¡µÚÒ»¸ö±äÁ¿µÚÒ»¸ö¹Û²âÖµ
Puromycin[c(1,3,5),c(1,3)] #ÌáÈ¡Êý¾Ý¼¯µÄÒ»¸ö×Ó¼¯£¨µÚ1¡¢3¡¢5Ðй۲âÖµ£¬µÚ1¡¢3ÁбäÁ¿£©
Puromycin[c(1,3,5),c(\µÈ¼ÛÓÚÉÏÊöÃüÁîPuromycin[c(1,3,5),c(1,3)] Puromycin[c(1,3,5),] #ÌáÈ¡Êý¾Ý¼¯µÄµÚ1¡¢3¡¢5Ðй۲âÖµ£¬ËùÓÐÁÐ Puromycin$conc #µÈ¼ÛÓÚPuromycin[,1]£¬ÌáÈ¡±äÁ¿ÎªconcµÄÄÇÁÐÖµ
subset(Puromycin,state==\ #ÌáÈ¡Âú×ãÌõ¼þstateΪtreated£¬rate>16µÄ×Ó¼¯
Êý¾Ý¼¯ÖÐÌí¼ÓбäÁ¿µÄÈýÖÖ·½·¨£º ÈôÏëÔö¼ÓбäÁ¿iconc=1/conc: 1¡¢»ù±¾·½·¨
Puromycin$iconc<-1/ Puromycin$conc 2¡¢Ê¹ÓÃwith()º¯Êý
Puromycin$iconc<-with(Puromycin,1/conc)
3¡¢Ê¹ÓÃtransform()º¯Êý£¬¿ÉÒ»´Î¶¨Òå¶à¸ö±äÁ¿
Puromycin <-transform(Puromycin,iconc=1/conc,sqrtconc=sqrt(conc)) head(Puromycin) #ÏÔʾͷ6ÐÐÊý¾Ý
ÁбíµÄ½¨Á¢£º
¸´ÔÓÊý¾Ý·ÖÎöÐèÒªÉú³É°üº¬²»Í¬ÀàÐ͵ĶÔÏó¡£RµÄÁбí¿ÉÒÔ×öµ½ L1<-list(1:6,matrix(1:4,nrow=2)) #½¨Á¢ÏòÁ¿ºÍ¾ØÕóµÄ»ìºÏÁбí
L2<-list(x=1:6,y=matrix(1:4,nrow=2)) #½¨Á¢ÏòÁ¿ºÍ¾ØÕóµÄ»ìºÏÁÐ±í£¬²¢¸÷×Ô¸³Ãû L2$x #ÏÔʾL2ÖеÄx±äÁ¿
Êý¾ÝµÄ´æ´¢
d<-data.frame(obs=c(1,2,3),treat=c(\ #½¨Á¢Êý¾Ý¼¯ 1¡¢ ±£´æÎª¼òµ¥µÄÎı¾Îļþ
write.table(d,file= \ #ÕâÀïquote±íʾ±äÁ¿Ãû²»·ÅÈëË«ÒýºÅÖÐ
2¡¢ ±£´æÎªcsv¸ñʽµÄÎı¾Îļþ
write.csv(d,file= \3¡¢ ±£´æÎªR¸ñʽÎļþ
save(d,file= \±£´æ¹¤×÷¿Õ¼äÓ³Ïñ
save.image() #µÈ¼ÛÓÚÏÂʽ
save(list=ls(all=TRUE),file=\
Êý¾ÝµÄ¶ÁÈ¡
1¡¢ ʹÓú¯Êýread.table()
setwd(\ #ÉèÖóÌÐò×Ô¶¯·ÃÎÊĿ¼
HousePrice<-read.table(file=\2¡¢ ʹÓú¯Êýscan()
º¯Êýscan()±Èread.table()¸üÁé»î£¬¿ÉÒÔÖ¸¶¨±äÁ¿µÄÀàÐÍ¡£ÁíÍ⣬scan()¿ÉÒÔ´´½¨²»Í¬µÄ¶ÔÏó£ºÏòÁ¿¡¢¾ØÕó¡¢Êý¾Ý¼¯¡¢ÁбíµÈ¡£
mydata<-scan(\3¡¢ ʹÓú¯Êýread.fwf()
¶Áȡָ¶¨¿í¶È¸ñʽµÄÊý¾Ý
mydata<-read.fwf(\4¡¢ ¶ÁÈ¡ExcelÊý¾Ý
1£© ´Ó¼ôÌù°å¶ÁÈëÊý¾Ý¡£ÏȽ«ExcelµÄÎļþÖеÄÊý¾Ý²¿·ÖÑ¡Ôñ¸´ÖƵ½¼ôÌù°å£¨ctrl+c£©£¬È»
ºóÓÃR¶ÁÈë
mydata<-read.delim(\2£© ʹÓóÌÐò°üRODBC
°²×°³ÌÐò°üRODBC ÔÚRÖУ¬°´²½Öè¡°³ÌÐò°ü-°²×°³ÌÐò°ü-ѡȡCRAN¾µÏñ·þÎñÆ÷£¨¿ÉÑ¡±±¾©µÄ£©-RODBC¡±
library(RODBC) #¼ÓÔØ³ÌÐò°üRODBC
z<-odbcConnectExcel(\ #´ò¿ªExcelÎļþ
foo<-sqlFetch(z,\ #Ñ¡ÔñSheet1¹¤×÷µ¥Êý¾Ý¶ÁÈëfoo close(z) #¹Ø±ÕExcelÎļþ
RÖÐÊý¾Ý¼¯µÄ¶ÁÈ¡
1£© RµÄ±ê×¼Êý¾Ýdatasets
R×ÔÉí°üº¬ÁËÒ»¸öÓÐ100¶à¸öÊý¾Ý¼¯µÄÊý¾Ý¼¯°üdatasets£¬Ëæ×ÅRÒ»´ÎÐÔ×Ô¶¯ÔØÈë¡£ ÁгöÈ«²¿Êý¾Ý¼¯ data()
ÓÃÊý¾Ý¼¯ÃûÏÔʾÊý¾Ý
Puromycin
2£© רÓóÌÐò°üÖеÄÊý¾Ý¼¯
¶ÁÈ¡ÆäËûÒѰ²×°µÄרÓóÌÐò°üÖеÄÊý¾Ý£¬¿ÉÒÔʹÓÃpackage²ÎÊý
data(package=\ #Áгö³ÌÐò°üpknameÖеÄÊý¾Ý¼¯£¬ÕâÀïpknameÖ»ÊÇÒ»¸öÒѰ²×°µÄ³ÌÐò°üµÄ´ú±í
data(dataname,package=\ #ÔØÈë³ÌÐò°üpknameÖеÄÊý¾Ý¼¯dataname
̽Ë÷ÐÔÊý¾Ý·ÖÎö
¶þÏî·Ö²¼ n<-20 p<-0.2 k<-seq(0,n) ¸ÅÂʺ¯Êýͼ
plot(k,dbinom(k,n,p),type='h',main='Binomial distribution,n=20,p=0.2',xlab='k') ·Ö²¼º¯Êýͼ
plot(k,pbinom(k,n,p),type='h',main='Binomial distribution,n=20,p=0.2',xlab='k')
±ê×¼Õý̬·Ö²¼ ÃܶȺ¯Êýͼ
curve(dnorm(x,0,1),xlim=c(-5,5),ylim=c(0,0.3),col='red',lwd=2,lty=3) ·Ö²¼º¯Êýͼ
curve(pnorm(x,0,1),xlim=c(-10,10),ylim=c(0,1),col='red',lwd=2,lty=1)
Ö±·½Í¼
´Ó¶þÏî·Ö²¼B£¨100,0.9£©ÖгéÈ¡ÈÝÁ¿ÎªN=100000µÄÑù±¾£¬»Ö±·½Í¼ N<-100000 #½¨Á¢Ëæ»úÊýµÄÈÝÁ¿ n<-100 #½¨Á¢¶þÏî·Ö²¼µÄÊÔÑéÊý p<-0.9 #½¨Á¢Ã¿´Î³É¹¦µÄ¸ÅÂÊ
x<-rbinom(N,n,p) #Çó³ö·þ´Ó¶þÏî·Ö²¼µÄËæ»úÊýN¸ö
hist(x,xlim=c(min(x),max(x)),probability=T,nclass=max(x)-min(x)+1,col='lightblue',main='Binomial distribution,n=100,p=.9') #Ö±·½Í¼
lines(density(x,bw=1),col='red',lwd=2) #ºËÃܶȹÀ¼ÆÍ¼
µ¥×ÜÌåÃèÊöÐÔͳ¼Æ 1¡¢Ö±·½Í¼
library(DAAG) #ÔØÈë³ÌÐò°üDAAG data(possum) #ÔØÈëÊý¾Ý¼¯possum
fpossum<-possum[possum$sex==\ #Ñ¡³öÐÔ±ðΪ´ÆµÄ¸ºÊóÊý¾Ý·ÅÈëfpossumÖÐ par(mfrow=c(1,2)) #×÷Í¼ÇøÓòÒ»·ÖΪ¶þ£¬Ò»ÐÐÁ½ÁÐ attach(fpossum) #¼ÓÔØÊý¾Ý¼¯
hist(totlngth,breaks=72.5+(0:5)*5,ylim=c(0,22),xlab=\length\at 72.5,77.5,...\ #»Ö±·½Í¼
hist(totlngth,breaks=75+(0:5)*5,ylim=c(0,22),xlab=\length\at