概述
基本数据管理
本篇文章主要参考了《R语言实战》1这本书。做了一些简化,是笔者学习的笔记,总结,书中例子复现。侵删。
算数运算
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
^或** | 求幂 |
%% | 求余 |
%/% | 整数除法 |
逻辑运算符
运算符 | 描述 |
---|---|
< | 小于 |
<= | 小于或等于 |
> | 大于 |
>= | 大于或等于 |
== | 严格等于 |
!= | 不等于 |
!x | 非x |
x|y | x或y |
x&y | x和y |
isTRUE(X) | 测试x是否为TRUE |
变量重命名
假设你希望将变 量名manager修改为managerID,并将date修改为testDate,那么可以使用语句:
fix(leadership)
来调用一个交互式的编辑器,单击变量名,然后在弹出的对话框中将其重命名。
若以编程方式,reshape包中有一个rename()函数,可用于修改变量名。rename()函数的 使用格式为:
rename(dataframe,c(oldname="newname",oldname="newname",...))
注意:reshape包未被默认安装,所以在首次使用它之前需要先使用install.packages (“reshape”)命令安装它。
缺失值
R提供了一些函数,用于识别包含缺失值的观测。函数is.na()允许你检测缺失值是否存在。请注意is.na()函数是如何作用于一个对象上的。它将返回一个相同大小的对象,如果某个 元素是缺失值,相应的位置将被改写为TRUE,不是缺失值的位置则为FALSE。
例如
y<-c(1,2,3,NA)
is.na(y)
注意 缺失值被认为是不可比较的,即便是与缺失值自身的比较。这意味着无法使用比较运算 符来检测缺失值是否存在。
你可以通过函数na.omit()移除所有含有缺失值的观测。na.omit()可以删除所有含有缺 失数据的行。
日期值
日期值通常以字符串的形式输入到R中,然后转化为以数值形式存储的日期变量。函数 as.Date()用于执行这种转化。其语法为as.Date(x, “input_format”),其中x是字符型数 据,input_format则给出了用于读入日期的适当格式。
符号 | 含义 | 示例 |
---|---|---|
%d | 数字表示日期(0~30) | 01~30 |
%a | 缩写的星期名 | Mon |
%A | 非缩写的星期名 | Monday |
%m | 月份(00~12) | 00~12 |
%b | 缩写的月份 | Jan |
%B | 非缩写的月份 | Janaury |
%y | 两位数的年份 | 07 |
%Y | 四位数的年份 | 2007 |
将日期转换为自负型变量
函数as.character()可将日 期值转换为字符型:
strDates<-as.character(dates)
类型转换函数
判断 | 转换 |
---|---|
is.numeric() | as.numeric() |
is.character() | as.character() |
is.vector() | as.vector() |
is.matrix() | as.matrix() |
is.data.frame() | as.data.frame() |
is.factor() | as.factor() |
is.logical() | as.logical() |
名为is.datatype()这样的函数返回TRUE或FALSE,而as.datatype()这样的函数则将其 参数转换为对应的类型。
数据排序 order()
数据合并
添加列
要横向合并两个数据框(数据集),请使用merge()函数。在多数情况下,两个数据框是通 过一个或多个共有变量进行联结的(即一种内联结,inner join)。
注意 :如果要直接横向合并两个矩阵或数据框,并且不需要指定一个公共索引,那么可以直接 使用cbind()函数:
total<-cbind(A,B)
这个函数将横向合并对象A和对象B。为了让它正常工作,每个对象必须拥有相同的行数, 且要以相同顺序排序。
添加行
要纵向合并两个数据框(数据集),请使用rbind()函数:
total<-rbind(dataframeA,dataframeB)
两个数据框必须拥有相同的变量,不过它们的顺序不必一定相同。如果dataframeA中拥有 dataframeB中没有的变量,请在合并它们之前做以下某种处理:
删除dataframeA中的多余变量;
在dataframeB中创建追加的变量并将其值设为NA(缺失)。
纵向联结通常用于向数据框中添加观测。
R语言实战 [美] Robert I. Kabacoff ↩︎
最后
以上就是可靠雪糕为你收集整理的R语言基本数据管理的全部内容,希望文章能够帮你解决R语言基本数据管理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复