R语言快速入门上手

时间:2023-03-08 16:18:44

导言:

    较早之前就听说R是一门便捷的数据分析工具,但由于课程设计的原因,一直没有空出足够时间来进行学习。最近自从决定本科毕业出来找工作之后,渐渐开始接触大数据行业的技术,现在觉得是时候把R拿下了;用了3天时间,除了对R先有一个大概认识之外,也着手敲指令。由于计算机专业的底子还不错,而且先后接触过不下10种编程语言,感觉R语言入门上手还是挺简单的。下面是自己汇总的一些简单入门代码供大家参考,感兴趣的朋友也可逐行敲打测试。

  • 1. 介绍变量、顺序结构、分支结构、循环结构、函数使用、获取帮助等知识
 #---这是注释---
#R变量类型及赋值
x <- 1.12;print(x)
y <- c(,,,);print(y)
z <- c("Dog","Pig","Cat");print(z)
v <- c(T,F,T,T) print(v) "Me" -> I
"Her" -> H #assign赋值函数
assign("t",);print(t) Me <- 'You'
assign(Me,);print(You) #cat()函数多数据输出
cat("x=",x,"\n") #ls()显示当前工作环境所有变量及函数
ls()
#ls.str()函数查看当前工作环境变量及函数的详细属性
ls.str() #rm()删除指定变量或函数
rm(x)
#rm(list=ls())删除全部,慎用! #-------------------------- #分支语句:if ,else ,ifse
x <-
if(x>) print("正数") x <-
if(x==) print("x=1") score <-
if(score >= ){
print("A")
}else if(score >= ){
print("B")
}else if(score >= ){
print("C")
}else if(score >=){
print("D")
}else {
print("不及格")
} #switch 条件分支,跟C语音类似
x <-
switch(x,
print("Choice 1"),
print("Choice 2"),
print("Choice 3")
) #循环语句for,while,repeat
s <-
vars <- :
for(i in vars){
s <- s+i
}
print(s) sum <-
i <-
while(i<=){
sum <- sum+i
i <- i+
}
print(sum) #-----------------
  • 2. 介绍向量、数组、列表、数据框、日期时间等数据结构的基础知识,以及生成这些结构的方法
 #向量
x0 <- c(,,,,);print(x0)
x1 <-:;print(x1) x2 <-seq(from=,to=);print(x2) #seq()修改步长by=
x3 <- seq(from=,to=,by=);print(x3)
#seq() 等分为length.out 份
x4 <- seq(from=,to=,length.out=);print(x4) y1 <- rep(,);print(y1)
y2<-rep("Hey",);print(y2) #sample()抽样函数
y3 <- sample(x=:,size=,replace=F);print(y3)
y4 <- sample(x=c(,),size=,replace=T);print(y4) #正态分布随机函数rnorm()
z1 <- rnorm(n=);print(z1)
z2 <- rnorm(n=,mean=,sd=);print(z2) #日期标准化转换as.Date()
D <- "1993-1-01"
A <- as.Date(D);print(A) #一维、多维数组
t1 <- :
dim(t1)<-c(,)
print(t1) t2 <-array(rnorm(,,),dim=c(,,))
print(t2)
print(length(t2)) #所有元素总数量 #数据框data.frame
df <- data.frame(Sname=c("Zhu","Lin","Li"),Sage=c(,,),Ssex=rep("Boy",))
df
print(class(df)) #列表list
li <- list(Sname=c("Chen","Zhu","Lin","Li"),Sage=c(,,),Ssex=rep("Boy",))
li
print(class(li)) #--------------------
  • 3. 介绍R提供了极其灵活的方式,访问、修改、向量、列表、数据框等数据结构,以及R中很多重要、常用的数据分析函数
 #3-1访问向量元素

 x <- :;print(x)
print(x[])
print(x[-])
print(x[:])
print(x[: * ])
print(x[c(,,)])
print(x[x>])
print(x[x > mean(x)]) names(x)<-LETTERS[:];print(x)
print(y["C"])
View(y) #修改指定位置的向量元素值r
z <- :;print(z)
z[]<-;print(z) z1<-:;print(z1)
z1<-c(x,,,);print(z1) z1[length(z1)+] <- ;print(z1) #----------------------- #列表list
li <- list(Sname=c("Chen","Zhu","Lin","Li"),Sage=c(,,),Ssex=rep("Boy",))
li print(li$Sname)
print(li[[]])
print(li$Sage[]) names(li)
li$SDate <- as.Date(rep("2014-12-12",));
names(li) #在列表任意位置添加一个新元素
z <- list(Sheight=c(,,,))
li <- append(li,z,after=) names(li) #删除列表中的指定项
li$Sage <-NULL
names(li) #-----------------------
#矩阵访问 data(EuStockMarkets)
print(head(EuStockMarkets))
print(class(EuStockMarkets))
print(summary(EuStockMarkets)) View(EuStockMarkets) rowTotal <- rowSums(EuStockMarkets) #矩阵内部必须全数值
EuStockMarkets <- cbind(EuStockMarkets,rowTotal)
colTotal <-colSums(EuStockMarkets)
EuStockMarkets <- rbind(EuStockMarkets,colTotal) print(tail(EuStockMarkets)) #访问数据框
#数据框data.frame
df <- data.frame(Sname=c("Zhu","Lin","Li"),Sage=c(,,),Ssex=rep("Boy",))
df
print(df[,]) #访问第一行
print(df[,]) #访问第二列 print(df$Sname) #当需要频繁访问某一个数据框时,可以使用attach()加载到搜索框 attach(df) print(Sage)
print(Sname)
print(Ssex)
detach(df)
ls() #-------------------------
 #- R语言基本分析函数
ls.str() x<-:
#查找最大、最小及平均值
#print(which,max(x))
#print(which,min(x)) print(mean(x))
print(max(x))
print(min(x)) w <- c(,,,,,,,,)
print(sort(w))
print(sort(w,decreasing=T)) #降序排列 #日期字符串向量
szDate <-c("2014-3-18","2014-03-1","2014-01-01","2013-01-02","2011-04-14")
t <- as.Date(szDate)
t <- sort(t);print(t) #反序排序rev()函数
x <- c(,,,,,,,,)
print(x);print(rev(x)) print(t);print(rev(t)) #获取‘游程’信息rle()
x1 <- c(,-,,,-,-,,,,,,)
y1 <- rle(x1)
print(mode(y1))
str(y1) x2 <- rnorm(,,)
print(x2)
breaks <- c(-,-,,,)
y2 <- cut(x2,breaks)
print(summary(y2)) #match() 匹配函数
x3 <- c(,,,,,,)
print(match(x,))
print(match(x,c(,))) #计算组合数、排列数
print(choose(,))
print(choose(,))
print(factorial())
print(factorial()) #符号函数sign(),只有1,-,
cat("sign()函数运算结果:",sign(),",",sign(2.13),",",sign(-1.2),"\n",sep="") x4 <- c(,,NA,,,,,NA,,)
y4 <- na.omit(x4);print(y4) dim(x4)<-c(,)
print(x4)
print(na.omit(x4)) x4 <- c(,,NA,,,,,NA,,)
y4 <- na.omit(x4);print(y4)
#检测数据是否包含NA
na.fail(x4);
na.fail(y4); #去除重复数据
x4 <- c(,,NA,,,,,NA,,)
print(unique(x4)) #subset()子数据集筛选函数
v1 <- subset(airquality, Temp > , select = c(Ozone, Temp))
v2 <- subset(airquality, Day == , select = -Temp)
v3 = subset(airquality, select = Ozone:Wind)
#查看数据
head(v3) #-------------------------

结语:

      怎么样?是不是很easy!当然,这只是R语言入门上手的第一part,后续有待更新。。。