在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
二、操作基础
%%取余
%/%整数除法
(1)eigen(...)求解方阵的特征值和特征向量
(2)solve(D,A)求解DX=A
(3)data<-list(...)取里面的对象data[["列名称"]];data[[下标]];data$列名称
(4)unlist(列表对象)把列表对象转化为向量对象
(5)names(数据框)读取并编辑列的名称
(6)数据框data 取里面的对象data[["列名称"]];data[[下标]];data$列名称;data[,列下标]
读取多列数据data[,列下标向量]
(7)subset函数索引
(8)数据框和矩阵的合并扩展rbind、cbind
(9)as.factor()把一个向量转化为无序因子向量,无序因子向量只能进行等于和不等于比较。
as.ordered()把一个向量转化为有序因子向量,有序因子可以进行大于小于操作。
is.factor() is.ordered()
(10)length(向量)
nchar(字符串)
paste函数合并字符串
strsplit把字符串分割为列表
unlist(strsplit(字符串,split="分隔符"))把一个字符串分割成多个字符串的向量
(11)substr()函数进行读取和替换字符串
grep()读取列表中特定的字符串,返回所在位置。读取字符串时,若包含特殊字符返回1,否则返回integer(0)
regexpr()只查询匹配第一个特定的字符,gregexpr()可以多次匹配
chartr(old,new,x)函数作字符替换
sub()只对字符串进行部分替换,gsub()可进行全部替换
(12)正则表达式
[]表示字符集合
[0-9] [a-z] [A-Z] [a-z0-9A-Z]
(.)除换行符以外的任何字符
\\通配符 表示普通的(.)为\\.
限定符:
*重复零次或更多次
+重复一次或更多次
?重复零次或一次
{n}重复n次
{n,}重复n次或更多次
{n,m}重复n~m次
(13)gl创建一个因子向量
(14)read.fwf 文件内的数据是固定宽度
scan 可以是先设定数据的类型
read.csv
(15)Excel格式文件的读取
RODBC包中核心函数odbcConnectExcel(打开excel的文件功能)和sqlFetch读取文件某个sheet内的数据内容。
(16)输出数据
向量和矩阵的输出write
列表和数据框write.table
write.csv
(17)输出R命令至外部文件
cat
三、R语言绘图基础(ggplot2 lattice包)
设置函数参数属性
(1) plot(c(1:10),type="b",col="black")#设置线的颜色
text(6,5,labels="文字",col = "red")#6,5代表坐标
points(2,5,col="blue")#设置点的颜色
(2)颜色条
pdf("D:/colors_bar.pdf",height=120)
par(mar=c(0,10,3,0)+0.1,yaxs="i")
barplot(rep(1,length(colors())),col=rev(colors()), names.arg=rev(colors()),horiz=TRUE,las=1,xaxt="n",main=expression("Bars of colors in"~
italic(colors())))
(3)rgb函数把颜色转化为十六进制
(4)rainbow(n,s=1,v=1,start=0,end=max(1,n-1)/n,gamma=1)
(5)坐标设置
axis(side=1,at=seq(from=3,length.out = 6,by=8.5),labels = x.text,cex=0.75)
(6)heat.colors()
terrain.colors()
topo.colors()
cm.colors()
(7)颜色扩展包RColorBrewer
brewer.pal()函数生成颜色
连续型Sequential(共18组每组为9个)
极端型Diverging(共9组,每组11个)
离散型Qualitative(共8组)
display.brewer.all(type="seq")
display.brewer.all(type="div")
display.brewer.all(type="qual")
选择连续型中的YlOrRd中第3~8组颜色
barplot(rep(1,6),col=brewer.pal(9,"YlOrRd")[3:8])
(8)bg参数设置其背景
border参数设置其边框颜色
文字元素
(9)font字体1、2、3、4表示正常,粗体,斜体,粗斜体
(10)cex 缩放倍数 大于一是放大 ,小于1是缩小
点元素参数设置
(11)点样式pch 颜色col 缩放cex
plot(1,col="white",xlim=c(1,9),ylim=c(1,7))
for (i in c(0:25)){
x<-(i%/%5)*1+1
y<-6-(i%%5)
if(length(which(c(21:25)==i)>=1)){
points(x,y,pch=i,bg="red",cex=2)
}
else{
points(x,y,pch=i,cex=2)
}
text(x+0.2,y+0.2,labels=paste("pch",i))
}
线元素相关参数设置
(12)线条样式lty 颜色col 粗细lwd
data<-matrix(rep(rep(1:7),10),ncol=10,nrow=7)
plot(data[1,],type="l",lty=0,ylim = c(1,8),xlim = c(-1,10),axes=F)
text(0,1,labels = "lty=0")
for(i in c(2:7)){
lines(data[i,],lty=i-1)
text(0,i,labels = paste("lty=",i))
}
(13)坐标轴axis()
col.axis 刻度标记的颜色
col坐标轴颜色
col.ticks 与坐标轴垂直的小刻度线的颜色
(14)与坐标轴相关的参数
(15)坐标轴的密度分布
绘制样本散点图
rug函数显示各轴的密度
(16)边框
bty参数
“0”默认4天边框都显示
"c"表示不显示右边框
"n"不绘制任何边框
"l"、"7"、"u"、"]"
box()函数可以设置各边框的线条样式
(17)网格线
grid()函数
(18)通过低级绘图函数points可以独立添加点元素
画图时分为几行几列时用par(mfrow=c(i,j))
(19)绘制线
曲线lines()
直线abline()
线段segments()
线性回归函数lm(y~x) abline(lm(y~x))
arrows(x,y,x1,y1,angle=90/60/30/0)函数绘制箭头
(20)文字
text()
同比增长 环比增长
(21)
绘制多边形
polygon(x,y,...)
(22)高级绘图函数
plot函数没有add参数
plot绘制散点、曲线图
barplot绘制柱形和条形图
hist绘制直方图
pie绘制饼图
使用ggplot2扩展包可以绘制星状图、堆积面积图(qplot)、气泡图。
密度曲线图plot(density())
雷达图/星状图 fms包中radarchart
关系网络图 igraph包中的plot函数
(23)图形
散点图plot 绘制一维变量样本点,y轴显示data变量数值,x显示样本序列号
绘制二维变量样本点,x轴显示x.data变量数值,y轴显示y.data变量数值
气泡图 在plot函数的基础上利用cex参数完成
x轴展示...,y轴展示...,散点的大小表示...
(1)准备数据(2)设置不同类目颜色(3)设置散点大小(4)绘制气泡图
曲线图 设置plot函数的type属性
柱状图 barplot函数
height绘制一组数据,则以向量形式输入,绘制对组数据,则以矩阵形式输入 data是数据框转化为矩阵 t(as.matrix(data))
horiz=FALSE 绘制柱状图 horiz=TRUE 绘制条形图
beside=FALSE 垂直堆积展示 beside=TRUE 水平并列展示
条形图 把barplot函数里的horiz参数设置为TRUE
labels=paste(round(10000*pv/sum(pv))/100,"%",sep
y轴设置标记文字使用axis函数设置的文字是垂直的,使用text函数设置的文字是水平的。
饼图 适合成分数目较少时
pie(x,labels=names(x),...)
复合图P114(没懂) barplot函数参数add为true时,表示该操作在之前绘图的基础上完成的
面积堆积图 ggplot2包
绘制百分比面积堆积图
ggplot(data=...,mapping=aes(...))+geom_area(position="fill")
绘制面积堆积图
ggplot(data=...,mapping=aes(...))+geom_area()
其中 aes(x,y,group,fill);data=data.frame(x=,y=,group);mapping=aes(x=x,y=y,group=group,fill=group)
root="c:/"
file=paste(root,"...csv文件",sep="")
data.csv<-read.csv(file)
library(ggplot2)
t<-0;group<-"";num<-0;
for(i in 1:nrow(data.csv))
{
t<-c(t,rep(i,ncol(data.csv)))
group<-c(group,names(data.csv))
num<-c(num,as.matrix(data.csv)[i,])
}
data<-data.frame(x=t,group=group,y=num)
data<-data[-1,]
ggplot(data,aes(x=x,y=y,group=group,fill=group))+geom_area()
直方图和密度曲线图
hist() 参数breaks
density变量的密度曲线 rug坐标轴密度曲线
plot(density(pv))
rug(pv)
柱状图高度直接代表pv的取值,x轴代表pv样本点序列号
直方图x轴代表pv的统计尺度,高度代表在各个统计尺度下pv样本的数目
(24)设置子绘图区域
par(mfrow=c(nrow,ncol))
绘制窗口操作
dev.new()
|
请发表评论