R-大数据分析挖掘(5-R基础回顾)
(一)R函数
R是一种解析型语言,输入后可直接获取结果
函数(输入参数,参数)
R的函数分为“高级”和“低级函数”
• 高级函数可调用低级函数
• 高级函数称为泛型函数
• 函数名 <-‐ funcion(数据,参数=1,默认值){
• 异常处理
• 表达式
• return 返回值
• }
(二)R赋值与注释
• 2+2
• a < -‐2
• c <-‐ a+b
• #注释
(三)对象起名
• 1.区分大小写,China与china不同
• 2.不能用数字作为变量,对象也不能用数字开头
• 3.保留字
– NA,NaN,Pi,LETTERS,leBers,month 等
(四)元素的类型
• 数值型,Numeric
• 字符串,Character
• 逻辑型,Logical
• 因子型,Factor
• 复数型,Complex 如2+3i
• 向量(vector),一系列元素
– c(1,2,3);c(“a”,”a”,”b”,”b”,”c”)
• 因子(factor) 因子是一个分类变量
• c(“a”,”a”,”b”,”b”,”c”)
• 矩阵(matrix),二维的数据表,是一个数组的特例
• 数组(array)
– 数组是k维的数据表(k in 1:n ,n 为正整数)
• 数据框(dataframe)
– 是由一个或几个向量和因子构成,他们必须是等长的,但可以是不同但数据类型
• 列表
– 列表可以包含任何类型的对象
– 可以包含向量、矩阵、高维数组也可以包含lixt
运算符
• 数学运算
– +,-‐ ===
• 比较运算 返回true or false
– >,<,<=,>=,==
• 逻辑运算
– !,&,&&,|,||
外部数据读取
• read.table()
• read.csv() 读取csv或者
• 可以直接通过某些程序包读取excel等格式数据
• read.csv(‘file’,header=T)
– header=T 表示将数据的第一行作为标题
类的判断
• mode() 判断存储类型
• class(),判断数据的类
• is.numeric()
• is.logical()
• is.charactor()
数据框内元素的引用
• intake <-‐ data.frame(intake.pre,intake.post)
• 1. $ 引用列,后面为列的名称
– 例如:intake$ intake.pre
• 2. [,] 方括号,逗号前为行,逗号后为列
• intake[,1]
• I = 1:5;intake [i,]
类的转换
• as.numeric()
• as.logical()
• as.charactor()
• as.matrix()
• as.data.frame()
• as.factor()
(五)R操作Json
1.安装Json
2.加载进GUI中
3.从json转到R上
4。class判断类型,cat输出不带横线的json字符串,peint输出的带有/,可以通过$取到深层次的json串,最内层的可以用[]去得到
5.将toJson之后字符串输出到文件使用sink或者writeLines
(六)R 语言不仅在统计分析和数据挖掘领域计算能力强大,它在数据可视化领域也不逊于
昂贵的商业软件。当然,R 在可视化上强大,其背后离不开各种开源软件包的支持,Cairo
就是这样一个用于矢量图形处理的类库。Cairo 可以创建高质量的矢量图形 (GIF、SVG、
PDF、PostScript) 和位图 (PNG、JPEG、TIFF),同时支持在后台程序中高质量渲染!本节
将介绍 Cairo 在 R 语言中的使用。
1.安装
2.加载进GUI并检查Cairo包支持的图片格式
3.画散点图
(七)R中的时间序列基础库ZOO
时间序列分析是一种动态数据处理的统计方法,通过对时间序列数据的分析,我们可
以感觉到世界正改变着什么! R 语言作为统计分析的利器,对时间序列处理有着强大的支
持。在 R 语言中,单独为时间序列数据定义了一种数据类型 zoo,zoo 是时间序列的基础,
也是股票分析的基础。本节将介绍 zoo 库在 R 语言中的结构和使用。
1.介绍
zoo 是一个 R 语言类库,zoo 类库中定义了一个名为 zoo 的 S3 类型对象,用于描述规
则的和不规则的有序的时间序列数据。zoo 对象是一个独立的对象,包括索引、日期、时
间,只依赖于基础的 R 环境。zooreg 对象继承了 zoo 对象,只能用于规则的时间序列数据。
R 语言中很多其他的程序包,都是以 zoo 和 zooreg 作为时间序列数据的基础的!
zoo 包的API 主要有 6 类
(1)基础对象
zoo: 有序的时间序列对象。
zooreg: 规则的时间序列对象,继承 zoo 对象。与 zoo 相比,不同之处在于 zooreg 要求数据是连续的。
(2)类型转换
as.zoo: 把一个对象转型为 zoo 类型。
plot.zoo: 为 plot 函数提供 zoo 的接口。
xyplot.zoo: 为 lattice 的 xyplot 函数提供 zoo 的接口。
ggplot2.zoo: 为 ggplot2 包提供 zoo 的接口。
(3)数据操作
coredata: 查看或编辑 zoo 的数据部分。
index: 查看或编辑 zoo 的索引部分。
window.zoo: 按时间过滤数据。
merge.zoo: 合并多个 zoo 对象。
read.zoo: 从文件读写 zoo 序列。
aggregate.zoo: 计算 zoo 数据。
rollapply: 对 zoo 数据的滚动处理。
rollmean: 对 zoo 数据的滚动计算均值。
(4)NA 值处理
na.fill: NA 值的填充。
na.locf: 替换 NA 值。
na.aggregate: 计算统计值替换 NA 值。
na.approx: 计算插值替换 NA 值。
na.StructTS: 计算季节 Kalman 滤波替换 NA 值。
na.trim: 过滤有 NA 的记录。
(5)辅助工具
is.regular: 检查是否是规则的序列。
lag.zoo: 计算步长和差分。
MATCH: 取交集。
ORDER: 值排序,输出索引。
(6)显示控制
yearqtr: 以年季度显示时间。
yearmon: 以年月显示时间。
xblocks: 作图沿 x 轴分割图形。
make.par.list: 用于给 plot.zoo 和 xyplot.zoo 数据格式转换。
R-大数据分析挖掘(5-R基础回顾)的更多相关文章
- 零基础数据分析与挖掘R语言实战课程(R语言)
随着大数据在各行业的落地生根和蓬勃发展,能从数据中挖金子的数据分析人员越来越宝贝,于是很多的程序员都想转行到数据分析, 挖掘技术哪家强?当然是R语言了,R语言的火热程度,从TIOBE上编程语言排名情况 ...
- R学习:《R语言数据分析与挖掘实战》PDF代码
分三个部分:基础篇.实战篇.提高篇.基础篇介绍了数据挖掘的基本原理,实战篇介绍了一个个真实案例,通过对案例深入浅出的剖析,使读者在不知不觉中通过案例实践获得数据挖掘项目经验,同时快速领悟看似难懂的数据 ...
- R语言数据分析系列六
R语言数据分析系列六 -- by comaple.zhang 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候怎样下手分析,数据分析的第一步.探索性数据分析. 统计量,即统计学里面关注的数据集 ...
- [译]用R语言做挖掘数据《七》
时间序列与数据挖掘 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用 ...
- R语言数据分析利器data.table包—数据框结构处理精讲
R语言数据分析利器data.table包-数据框结构处理精讲 R语言data.table包是自带包data.frame的升级版,用于数据框格式数据的处理,最大的特点快.包括两个方面,一方面是写的快,代 ...
- 《深入理解Java虚拟机》第2版挖的坑终于在第3版中被R大填平了
这是why技术的第34篇原创文章 本周还是在家办公的一周,上面的图就是我在家的工位,和上周<Dubbo Cluster集群那点你不知道的事>这篇文章里面的第一张图片比起来,升级了显示器支撑 ...
- [译]用R语言做挖掘数据《五》
介绍 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...
- [译]用R语言做挖掘数据《二》
数据探索 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...
- R语言数据分析系列之四
R语言数据分析系列之四 -- by comaple.zhang 说到统计分析我们就离不开随机变量,所谓随机变量就是数学家们为了更好的拟合现实世界的数据而建立的数学模型.有了她我们甚至能够来预測一个站点 ...
随机推荐
- 免安装oracle驱动访问数据库
try { string connStr = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.110.110)( ...
- 升级yosemite后java出错的解决
昨天升级mac os到yosemite后,因为是系统整体升级,有一些在设置会丢失,这是后话,先说说我在执行一个需要java参与的程序的时候得到如下错误: Error: JAVA_HOME is not ...
- c程序设计语言_习题1-11_学习单元测试,自己生成测试输入文件
How would you test the word count program? What kinds of input are most likely to uncover bugs if th ...
- split方法在低版本IE浏览器上无法解析的问题
前一篇不知道怎么被博客园给删了,重新补发一个. 最近在项目中发现一个很诡异的问题,通过js获取cookie时,发现赋给用户name的时候IE9和低于9以下的浏览器对比时获取到的名字不一样,通过调试发现 ...
- bzoj2763: [JLOI2011]飞行路线 分层图+dij+heap
分析:d[i][j]代表从起点到点j,用了i次免费机会,那就可以最短路求解 #include <stdio.h> #include <iostream> #include &l ...
- POJ 2240 Arbitrage spfa 判正环
d[i]代表从起点出发可以获得最多的钱数,松弛是d[v]=r*d[u],求最长路,看有没有正环 然后这题输入有毒,千万别用cin 因为是大输入,组数比较多,然后找字符串用strcmp就好,千万不要用m ...
- HDU 1881
思路:一开始以为rating相同的点就直接比较rp然后建图,后来想想不对,因为这样发现不了冲突.后来一想对于rating相同的点可以不用排序,因为对于这些点,他们的rp必然不相同,也就是说在这些点的内 ...
- Jmeter初步使用二--使用jmeter做一个简单的性能测试
经过上一次的初步使用,我们懂得了Jmeter的安装与初步使用的方法.现在,我们使用Jmeter做一个简单的性能测试.该次测试,提交的参数不做参数化处理,Jmeter各元件使用将在介绍在下一博文开始介绍 ...
- 从 NavMesh 网格寻路回归到 Grid 网格寻路。
上一个项目的寻路方案是客户端和服务器都采用了 NavMesh 作为解决方案,当时的那几篇文章(一,二,三)是很多网友留言和后台发消息询问最多的,看来这个方案有着广泛的需求.但因为是商业项目,我无法贴出 ...
- Sublime Text 2使用心得
一个比较详细的文章:http://www.cnblogs.com/figure9/p/sublime-text-complete-guide.html 一. 前言 作为一个前端,有一款好的开发利器是必 ...