R语言学习-第一天-基础知识

R的入门

R的起源:R是S语言的一种实现。
R的许可证是GNU
R用于统计分析、绘图的语言和操作环境。
R是一套完整的数据处理、计算和制图软件系统。
R官方网站地址:www.r-project.org

1.创建向量和矩阵

c() 创建向量 x1=c(2,4,6,8,10)
length() 计算向量长度
mode() 判断向量内数据类型
rbind(x1,x2) 按行组合矩阵
cbind(x1,x2) 按列组合矩阵
means() 求均值
sum() 求和
min() 求最小值
max() 求最大值
var() 求方差 variance
prod() 连乘
sd() 求标准差
help() 帮助函数

2.向量的产生和计算

1:10 从1到10步长为1;
1:10-1 每个元素减1
1:10*2 每个元素乘2
a[5] 显示a中第5个元素
a[-5] 不显示a中第5个元素
a[1:5] 显示a中1-5 5个元素
a[-(1:5)]不显示a中1-5 5个元素
a[c(2,4,7)] 显示a中第2 第4 第7个元素
a[a<20] 显示a中<20的所有元素

seq()函数:按指定规律产生向量
seq(5,20) 生成5-20 向量
seq(5,121,by=2) 步长设定为2
seq(5,121,length=10) 产生10个数的向量

letters 产生26个小写字母 (固定向量名)
letters[1:26]

which()函数 返回满足条件的下标 查询功能
which(a==2)
which(a>5)
which.min(a)
a[which(a>5)]

rev() 顺序颠倒
sort() 升序排列

matrix() 生成矩阵 默认按列走
a1=c(1:12)
matrix(a1,nrow=3,ncol=4)
matrix(a1,nrow=3,ncol=4,byrow=T) 按行走
2、数组 array 有维度的向量
3、数据框 frame
特征: 1、矩阵形式,但列可以不同数据类型
2、每一列是一个变量,每一行是一个观测值
读取文件:
1、读取文本:(x=read.table(“abc.txt”))
2、读取excel文件,prn文件:w<-read.table(“test.prn”,header=T) 空格分隔
csv文件:w<-read.table(“test.csv”,header=T) 逗号分隔

安装程序包RODBC之后,可以直接读取xls文件(32位)
举例:
z<-odbcConnectExcel(“test.xls”)
(w<-sqlFetch(z,“Sheet1”))

3.循环语句

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

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

4.R脚本(R程序)

运行脚本函数:source("h.r")
在脚本中必须使用print函数,在运行时才能完成显示

案例练习

模拟产生统计专业同学的名单(学号区分),记录数学分析,线性代数,概率统计三科成绩,然后进行统计分析
学号从1037800到10378100
三科分别为:数学分析、高等代数、概率论

num=seq(10378001,10378100)  # 产生100个学号
x1=round(runif(100,min=80,max=100))  #  runif 产生均匀分布随机数
x2=round(rnorm(100,mean=80,sd=7))     #rnorm 产生正态分布随机数,均值80,标准差7
x3=round(rnorm(100,mean=83,sd=18))  #  均值83,标准差18 存在超过100分的
x3[which(x3>100)]=100  #使用which将其化成100分

#合成数据框,并保存到硬盘中
x=data.frame(num,x1,x2,x3)
write.table(x,file="mark.txt",col.names=F,row.names=F,sep=" ")

常见分布函数
rnorm() 正态分布
rpois() 泊松分布
rexp() 指数分布
rgamma()伽马分布
runif() 均匀分布
rbinom()二项分布
rgeom() 几何分布
统计分析:

#统计分析:
colMeans(x) #  计算各科平均分
colMeans(x)[c("x1","x2","x3")]
apply(x,2,mean) # 2表示对列操作
apply(x,2,max)
apply(x,2,min) 
apply(x[c("x1","x2","x3")],1,sum)  #对每个学生求总分

RGui运行界面

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值