R语言第一周

来源:互联网 发布:十字军之王2 2.36优化 编辑:程序博客网 时间:2024/06/10 07:30

哈哈,闲来无事,木木童鞋报名参加了tigerfish老师为期12周的R语言学习的课程,不出意外的话我将在博客里记录这12周的学习过程,希望最后的学习能达到预期的效果。

好了闲话不多说,开始吧:

1、学习r语言的工具:

Rgui和安装方式:软件下载地址及安装指导:http://download.csdn.net/detail/changyanmanman/4375945

2、软件使用:向量、矩阵、数组、数据框

函数c():创建一个向量:x=c(1,3,4,2,5,7,6) ——查看x的内容:x 回车——查看x的类型:mode(x)——查看长度(即x里面元素的个数)length(x)——查看里面的最大值最小值范围range(x).——求x的中位数median(x) ;——mean(x)求平均值;

函数rbind() ,cbind() 矩阵合成;


sum(x)求和;

max() min()最大最小;

vax()求方差:var(x) = sum((x − mean(x))2)/(length(x) − 1).

prod()连乘;

sd()标准差; 

产生向量:

>1:10    ——产生1到10的一个向量;>1:10-1  ——向量的每个项都减1; >1:20*2   ——向量每一项都乘2; >2:60*2+1   ——产生2到60的向量,每一项都先乘以2,然后加1.


>a=2:60*2+1 向量赋给a。  >a[5] 显示向量a中的第5个元素。>a[-5] 除了第5个元素不显示,其他都显示出来

>a[1:5] 显示向量中的第1到第5个元素。 同理:>a[-(1:5)] 除了1到5这几个元素不显示,其他的都显示。

注意:a[1,2,3] 这个格式是不对的。a[c(2,4,7)]显示第2,4,7个元素。 a[3:8]第3到第8个元素。a[a<20] 列出小于20的元素。

seq() 函数:按照指定指定的方式产生向量

seq(5,20) 产生从5到20的一个向量,默认公差是1。 seq(5,121 by=2) 产生5到121的一个向量,公差定义为2。seq(5,121,length=10)产生一个长度等于10的向量,公差由R自己算。

letters[1:30] 产生字母向量的函数。

which()函数: which.max(a);which.min(a)  ——a向量中最大最小的下标。

求a向量中最大的元素:a[which.max(a) ]    中括号内部返回的下标,最后返回最大值。which(a==2) 返回a向量中值等于2的下标。

a[which(a==2)] 。 which(a>5) 。。a[which(a>5)]...很简单了哈。。

rev()和 sort()函数:

rev():把一个向量倒叙。。

sort() 从小到大排序。。 rev(sort(a))正序排列a;

matrix()函数:

生成矩阵函数;matrix(al,nrow=3,ncol=4) 生成3行4列的矩阵,默认从列开始数。

如果是:matrix(al,nrow=4,ncol=3 byrow=T) 表示按行开始数。

函数t() :矩阵转置函数:

a是一个矩阵:a+b ; a-b :对应的元素相加减。

函数diag(): 求对角线,对于一个方阵a,diag(a) 可以返回a的对角线。diag(4) 构建一个4阶矩阵,对角线都为1,其余的为0. 

可以用向量来作为对角线形成对角线矩阵:diag(b) b是向量,而不是矩阵。 

矩阵求逆,函数rnorm() , solve():

rnorm(12)产生正态分布的向量。

solve(): 求逆矩阵;

solve()函数求解方程组:

矩阵相乘:

数组:

判断是不是向量:>is.vector(x)            判断是不是数组:>is.array(x)   

如何把向量变成数组呢?加上维度:dim(x)<-c(2,3)    现在就变成了一个2行3列的数组了。也是一个矩阵。矩阵是数组的一个特殊情况。因为数组可以有三维四维。。。等多维。

数据框:

数据框与数组(矩阵)的不同就是数据框每一列数据类型可以不同,而数组必须全部是数值的。

可以把俩个长度相同的向量(向量的数据类型可以不同)用一个函数data.frame(x1,x2) 生成一个数据框。还可以替换列头:data.frame('重量'=x1,'运费'=x2);

画散点图:plot(x)

循环语句:

for(i  in 1:60) { a[i]=i*2+3 }

while(a[i]<121) {i=i+1; a[i]=a[i-1]+2 }

3、R脚本

source() 运行脚本函数:如source("test.r") 这就运行了工作目录下的r程序脚本test.r 如果目录在d盘根目录,应该这样写:

source("d:\\test.r") 注意是两个反斜杠,不是一个,因为一个是转义字符。

print() 打印函数:一般在命令窗口直接可以输入向量就可以打印,但是在脚本里是需要print()函数的。


4、综合习题

正态分布函数rnorm( )
泊松分布函数rpois( )
指数分布函数rexp( )
Gamma分布函数rgamma( )
均匀分布函数runif( )
二项分布函数rbinom( )
几何分布函数rgeom( )

原创粉丝点击