R语言学习

发布于:2022-08-08 ⋅ 阅读:(819) ⋅ 点赞:(0)

        作为新手小白刚接触R,使用过程中总是遇到各种各样的问题,所以开始学习《R语言实战》这本书。书中说:“通过教授别人来学习是最好的方式”,我想着模仿着作者的做法记录下去,不想着能教授别人什么,主要对自己起到一个监督的作用吧。也不奢求跟作者一样把网站(Quick-R: Home Page)建设的那么好,只希望写下我在处理某些问题时的一些解决办法,为以后的我或他人提供一些便利。

基础知识

  1. 赋值用符号“<-”  ,而不用 “=”
  2. 路径中要使用 / 或 \\ ,而反斜杠 \ 在R中作为一个转义符
  3. 注意引号(" ")的使用,install.packages("包名称")
  4. 行称为观测,列称为变量
  5. 符号$的作用:用来选取一个给定数据框中的某个特定变量
  6. 储存数据的结构有:标量,向量,数组,数据框和列表; 标量是只含一个元素的向量,R中没有标量,以单个元素的向量表示。

数据

  1. 用函数c()输入向量,例如:a <- c(2,3,5,10)。向量为一维数组,类型有数值型、字符型或逻辑型,注意数据必须是相同的类型或模式,可通过方括号[数字]给定位置去访问向量。
  2. 用函数matrix( )来创建矩阵,二维数组,但每个元素必须是同类型的。例创建一个5x4的矩阵:a <- matrix(1:20, nrow=5, ncol=4)
  3. 用函数array( )来创建数组,其与矩阵相似,元素必须是同类型,但维度可大于2
  4. 用函数data.frame()创建数据框,每一列数据的模式必须唯一
  5. 求平均值,标准差,相关度分别用mean(a),sd(a),co(a)
  6. 函数summary(数值对象名),可输出最小值,最大值,四分之一值,均值等,我的理解是把能算的都算了一遍(统计)
  7. attach()相当于进入到该对象下
  8. detch()将数据框从搜索路径中移除,但并不会对数据框本身做任何处理。
  9. with()与attach()类似,但with创建新对象仅在当前函数内有用,并不能在全局环境中创建。
  10. 函数factor()可将对象与数值一一对应,如将True对应数值1,便于后续分析
status <- c("Poor","Improved","Excellent","Poor")
status <- factor(status,ordered=TURE)
#该操作会将它们直接关联为1=Excellent、2=Improved以及3=Poor。

绘图

  1. plot(x, y, type="b")x置于横轴,将y置于纵轴,绘制点集(x, y),然后使用线段将其连接。选项type="b"表示同时绘制点和线。
  2. 函数par()可用于修改图形参数。参数可在用时查询,这里不多赘述。
  3. 函数title()为图形添加标题和坐标轴标签,标题(main)、副标题(sub)、坐标轴标签(xlabylab)并指定了坐标轴范围(xlimylim)。
    title(main="My Title",col.main="red",sub="My Sub-title",col.sub="blue",xlab="My X label",ylab="My Y label",col.lab="green",cex.lab=0.75)
    #cex、col和font分别用来调整字号、颜色和字体样式
  4. 函数legend()来添加图例
  5. 函数axis()来创建自定义的坐标轴
  6. Hmisc包中的函数minor.tick()添加次要刻度线
  7. 函数abline()可以用来为图形添加参考线,也可以指定其他图形参数(如线条类型、颜色和宽度)。
  8. 函数text()可向绘图区域内部添加文本,而函数mtext()则向图形的四个边界之一添加文本。
  9. 函数par()layout()可以容易地组合多幅图形为一幅总括图形

其他函数

  1. 函数transform()创建新向量到原有数据结构中
  2. 函数fix()来调用一个交互式的编辑器,单击变量名,可在弹出的对话框中对变量名进行重命名。reshape包中有一个rename()函数,也可用于修改变量名。
  3. 函数is.na()用于检测缺失值是否存在,存在回复TRUE
  4. 函数na.omit()可以删除所有含有缺失数据的行。
  5. Sys.Date()可以返回当天的日期,而date()则返回当前的日期和时间
  6. 函数format()可接受一个参数并按某种格式输出结果
  7. 函数difftime()计算时间间隔
  8. 函数order()对一个数据框进行排序,默认升序
  9. 函数merge(),cbind()横向合并两个数据框函数rbind()纵向合并两个数据框
  10. 函数sample()从数据集中(有放回或无放回地)抽取大小为n的一个随机样本。
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到