学习R语言第六天

文章目录

绘制图形的方式

计算字符的数量的方式

nchar("abc")

提取字符变量的方式

substr("sdfd",1,2)

根据名称查询前缀的方式

grep(3,c(1,"sdf","sdf",3,"4"),fixed = TRUE)

转化大小写的方式

大写

toupper("sdf")

小写的

tolower("SDF")

获取数据长度的方式

length(12)

生成一个序列的方式

从1开始到10,每次增加2

seq(1,10,2)

从1到3 重复2次

rep(1:3,2)

将函数到数据框中的方式

a <- 5

sqrt(a)

生成数据

rnorm 生成30行数据,nrow是6列数据

mydata <- matrix(rnorm(30),nrow = 6)

mydata

计算每行的平均值的

apply(mydata,1,mean)

计算每列的平均值

apply(mydata,2,mean)

计算每个行的结尾均值

apply(mydata,2,mean,trim=0.2)

数据处理的方式

统计每个学生的前20%到成绩进行A-b的方式进行排名的方式

options(digits = 2)

Student <- c("j","fs","sf","sf")

数学

Math <- c(20,30,40,40)

科学

Science <- c(4,95,94,29)

英语

English <- c(34,5,3,13)

成绩

roster <- data.frame(

Student,

Math,

Science,

English,

stringsAsFactors = FALSE

)

roster

计算综合得分

后去2行到4行的数据 计算标准差

z <- scale(roster[,2:4])

z

计算每列平均值

score <- apply(z,1,mean)

score

cbind 数据进行合并

roster <- cbind(roster,score)

roster

对学生进行评分的方式

计算学生的百分比

注意使用百分比需要先计算均值

score 输入的向量的方式

输出对应的百分比的方式

y <- quantile(score,c(.8,.6,.4,.2))

y

学生进行评分的方式

roster g r a d e r [ s c o r e > = y [ 1 ] ] < − " A " r o s t e r grader[score >= y[1]] <- "A" roster grader[score>=y[1]]<−"A"rostergrader[score < y[1] & score >= y[2] ] <- "B"

rosterKaTeX parse error: Expected 'EOF', got '&' at position 21: ...r[score < y[2] &̲ score >= y[3] ...grader[score < y[3] & score >= y[4] ] <- "D"

roster$grader[ score >= y[4] ] <- "F"

截取这个数据的方式

name <- strsplit((roster$grader)," ")

name

Lastname <- sapply(name,"[",2)

Lastname

Firstname <- sapply(name,"[",1)

roster <- cbind(Firstname,Lastname,roster[,-1])

roster

安装名字的方式进行排序

roster[order(Lastname,Firstname)]

控制流的方式

for (i in 1:10) print("Hello")

条件执行方式

x <- 10

if (1>x) print("成功") else print("的")

cars <- mtcars[1:5,1:4]

cars

t(cars)

options(digits = 3)

attach(mtcars)

mtcars

group1是汽缸数量 group2是档位数量 mpg 是均值

aggdata <- aggregate(mtcars,by=list(cyl,gear),FUN = mean,na.rm=TRUE)

aggdata

数据进行融合的方式

library(reshape2)

ID <- c(1,1,2,2)

Time <- c(1,2,1,2)

X1 <- c(5,3,6,2)

X2 <- c(6,5,1,4)

mydata <- data.frame(

ID,

Time,

X1,

X2

)

mydata

数据进行合并的方式

md <- melt(mydata,id=c("ID","Time"))

md

library("vcd")

library("grid")

count <- table(Arthritis$Improved)

count

绘制直方图的方式

xlab 代表x ylab 代表y count 代表数据

barplot(count,

main = "simp ba",

xlab = "Impo",

ylab = "Fre")

水平直方图 horiz = TRUE

barplot(count,

main = "simp ba",

xlab = "Impo",

ylab = "Fre",

horiz = TRUE)

counts <- table(Arthritis I m p r o v e d , A r t h r i t i s Improved,Arthritis Improved,ArthritisTreatment)

counts

绘制条形图的方式

legend=rownames(counts) 图形添加标签的方式

col = c("red","yellow","green"), 中添加颜色的方式

barplot(

counts,

main="sf",

xlab = "tsdf",

ylab = "sdf",

col = c("red","yellow","green"),

legend=rownames(counts)

)

分组条形的方式 beside = TRUE

barplot(

counts,

main="sf",

xlab = "tsdf",

ylab = "sdf",

col = c("red","yellow","green"),

legend=rownames(counts),

beside = TRUE

)

states <- data.frame(

state.region,

state.x77

)

states

计算均值

means <- aggregate(states$Illiteracy,by=list(state.region),FUN=mean)

means

means <- means[order(means$x),]

means

绘制条形图的方式

barplot(means x , n a m e s . a r g = m e a n s x,names.arg = means x,names.arg=meansGroup.1)

title("fsd")

条形图增加标签

增加y边界大小

par(mar=c(5,8,4,2))

旋转条形的标签

cex.names = 0.8 减小字体的方式

par(las=2)

barplot(

counts,

main="sfs",

horiz = TRUE,

cex.names = 0.8,

names.arg = c("nosf","fs","fs")

)

棘状图的方式

library(vcd)

counts <- table(Treatment,Improved)

spine(counts,main = "Sping gro Ex")

detach(Arthritis)

饼状图的方式

par(mfrow=c(2,2))

slices <- c(10,12,4,16,8)

lbls <- c("Us","UK","sf","fsd","fsqq")

slices 代表数据量的方式 labeles 标签名称的方式

pie(slices,labels = lbls,

main = "fsd")

饼状图添加比例值

pct <- round(slices/sum(slices)*100)

lbls2 <- paste(lbls," ",pct,"%",sep = "")

col=rainbow(length(lbls2)) 添加比例值的方式

pie(slices,

labels = lbls2,

col=rainbow(length(lbls2)),

main = "sdfds")

install.packages("plotrix")

library(plotrix)

绘制3d的图形的方式

pie3D(slices,

labels = lbls,

explode = 0.1,

main="fs")

mytable <- table(state.region)

lbls3 <- paste(names(mytable),"\n",mytable,sep = "")

lbls3

pie(mytable,labels = lbls3,

main = "fs")

相关推荐
地球空间-技术小鱼5 分钟前
YUM(Yellowdog Updater, Modified)和DNF(Dandified YUM)简介
linux·运维·服务器·笔记·学习
木向9 分钟前
leetcode22:括号问题
开发语言·c++·leetcode
comli_cn10 分钟前
使用清华源安装python包
开发语言·python
筑基.16 分钟前
basic_ios及其衍生库(附 GCC libstdc++源代码)
开发语言·c++
小码的头发丝、30 分钟前
Java进阶学习笔记|面向对象
java·笔记·学习
雨颜纸伞(hzs)31 分钟前
C语言介绍
c语言·开发语言·软件工程
J总裁的小芒果33 分钟前
THREE.js 入门(六) 纹理、uv坐标
开发语言·javascript·uv
坊钰1 小时前
【Java 数据结构】移除链表元素
java·开发语言·数据结构·学习·链表
chenziang11 小时前
leetcode hot100 LRU缓存
java·开发语言
时雨h1 小时前
RuoYi-ue前端分离版部署流程
java·开发语言·前端