[读书笔记] R语言实战 (四) 基本数据管理
1. 创建新的变量
mydata<-data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8))
#方法一
mydata$sumx<-mydata$x1+mydata$x2
mydata$meanx<-(mydata$x1+mydata$x2)/2
#方法二
attach(mydata)
mydata$sumx <- x1+x2
mydata$meanx <- (x1+x2)/2
detach(mydata)
#第三种方式
mydata<-transform(mydata,sumx=x1+x2,meanx=(x1+x2)/2)
2. 变量的重编码
连续->类别
错误->正确值
分数->级别划分
3. 变量的重命名
reshape()包中的rename()函数
rename(dataframe, c(oldname='newname',oldname = 'newname')
4. 缺失值
缺失值:NA(Not Availabe不可用表示)
不可能出现的值:NAN(Not a number, 非数值)
is.na() 检查是否是缺失值
na.rm= TRUE 在计算之前移除缺失值
na.omit()删除所有不完整的规则
5. 日期值:日期值以字符串形式输入到R,然后转化为以数值形式存储的日期变量
as.Date(x, "input_format")

#日期默认输入格式为yyyy-mm--dd
mydates <- as.Date(c('2007-06-22','2004-02-13'))
#新的输入格式
strDates <-c('01/05/1965','08/16/1975')
dates <- as.Date(strDates,"%m/%d/%Y")
#日期转化为字符型变量
strDates <- as.character(dates)
6. 数据类型转化

7. 数据排序
order() 对数据进行排序, 默认顺序是升序,在排序变量前面添加一个减号就可以得到降序的排序结果
8. 数据集的合并
1). 列合并:向数据框中添加变量 merge(dataframeA, dataframeB, by = 'ID')
2). 行合并:向数据框中添加观测 rbind()
3). subset()函数
newdata <- subset(dateframe, conditions, select = c(col1,col2))
4) 抽样函数 sample()
[读书笔记] R语言实战 (四) 基本数据管理的更多相关文章
- [读书笔记] R语言实战 (一) R语言介绍
典型数据分析的步骤: R语言:为统计计算和绘图而生的语言和环境 数据分析:统计学,机器学习 R的使用 1. 区分大小写的解释型语言 2. R语句赋值:<- 3. R注释: # 4. 创建向量 c ...
- [读书笔记] R语言实战 (十四) 主成分和因子分析
主成分分析和探索性因子分析是用来探索和简化多变量复杂关系的常用方法,能解决信息过度复杂的多变量数据问题. 主成分分析PCA:一种数据降维技巧,将大量相关变量转化为一组很少的不相关变量,这些无关变量称为 ...
- [读书笔记] R语言实战 (五) 高级数据管理
1. 数值函数 1) 数学函数 2) 统计函数 3. 数据标准化 scale() 函数对矩阵或者数据框的指定列进行均值为0,标准化为1的标准化 mydata <- data.frame(c1=c ...
- [读书笔记] R语言实战 (六) 基本图形方法
1. 条形图 barplot() #载入vcd包 library(vcd) #table函数提取各个维度计数 counts <- table(Arthritis$Improved) count ...
- [读书笔记] R语言实战 (二) 创建数据集
R中的数据结构:标量,向量,数组,数据框,列表 1. 向量:储存数值型,字符型,或者逻辑型数据的一维数组,用c()创建 ** R中没有标量,标量以单元素向量的形式出现 2. 矩阵:二维数组,和向量一 ...
- [读书笔记] R语言实战 (十三) 广义线性模型
广义线性模型扩展了线性模型的框架,它包含了非正态的因变量分析 广义线性模型拟合形式: $$g(\mu_\lambda) = \beta_0 + \sum_{j=1}^m\beta_jX_j$$ $g( ...
- [读书笔记] R语言实战 (三) 图形初阶
创建图形,保存图形,修改特征:标题,坐标轴,标签,颜色,线条,符号,文本标注. 1. 一个简单的例子 #输出到图形到pdf文件 pdf("mygrapg.pdf") attach( ...
- 《R语言实战》读书笔记--为什么要学
本人最近在某咨询公司实习,涉及到了一些数据分析的工作,用的是R语言来处理数据.但是在应用的过程中,发现用R很不熟练,所以再打算学一遍R.曾经花一个月的时间看过一遍<R语言编程艺术>,还用R ...
- R语言实战(二)数据管理
本文对应<R语言实战>第4章:基本数据管理:第5章:高级数据管理 创建新变量 #建议采用transform()函数 mydata <- transform(mydata, sumx ...
随机推荐
- fs
yum install -y make expat-devel git gcc-c++ autoconf automake libtool wget python-devel ncurses-deve ...
- ansible自动化部署
ansible通过模块实现批量管理及部署服务器,功能有模块实现 ansible无需在被控端安装agent/client,因为ansible是通过ssh分发ad-hoc(单条指令)或者palybook( ...
- Linux 查看用户命令
1.Linux里查看所有用户 (1)在终端里.其实只需要查看 /etc/passwd文件就行了. (2)看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户. 或者用cat /etc/p ...
- Problem 7
Problem 7 # Problem_7.py """ By listing the first six prime numbers: 2, 3, 5, 7, 11, ...
- spring data JPA使用quartz定时器的具体实现
第一步.在pom.xml中的配置 <!--quartz--> <dependency> <groupId>org.quartz-scheduler</grou ...
- mysql修改配置文件
在Apache, PHP, MySQL的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分.对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接影响到论坛的速度和承载量!同 ...
- 定时器SDK
定时器是一切SDK的根本,欲写SDK必先确定定时器,定时器效率的高低决定着SDK函数的效率,下面是我个人写的Linux C++服务器端进程SDK中的定时器,部分参照了ACE和RocketMQ定时器的思 ...
- IP协议解读(三)
今天我们来介绍网络层中的ICMP协议 ICMP报文格式 图一: 从图片上我们能够分析出.前三位的字段都是固定的.8位类型字段,8位代码字段.16位校验和字段.其它字段因ICMP报文类型不同而不同.8位 ...
- Android——隐藏输入法的小技巧
今天偶然在百度地图提供的DEMO里看到这样一段代码.认为确实是个小技巧,就写下来分享一下. 针对的问题: 我们在开发android界面的时候,常常使用EditText控件.然后每次进入这个页面的时候, ...
- 【Android 系统开发】使用 Source InSight 阅读 Android 源代码
1. 安装 Source Insight (1) Source Insight 相关资源 安装相关资源 : -- 下载地址 : http://www.sourceinsight.com/down35. ...