• R语言-基础解析


    二、操作基础
    %%取余
    %/%整数除法
    (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() 
     
     
     
     
     
     
     
  • 相关阅读:
    详解ASP.NET的内置对象
    如何架设FTP服务器
    输出JSON问题
    new , virtual , override
    Javascript 操作select控件大全(新增、修改、删除、选中、清空、判断存在等)
    Java回顾之I/O
    数据结构之栈和队列
    Java回顾之多线程同步
    设计模式之行为型模式
    Java回顾之网络通信
  • 原文地址:https://www.cnblogs.com/luckyfang/p/5479535.html
Copyright © 2020-2023  润新知