[译]用R语言做挖掘数据《一》
介绍
一、实验说明
1. 环境登录
无需密码自动登录,系统用户名shiyanlou,密码shiyanlou
2. 环境介绍
本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序:
1. LX终端(LXTerminal): Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令
2. GVim:非常好用的编辑器,最简单的用法可以参考课程Vim编辑器
3. R:在命令行输入‘R’即可进入交互式环境,下面的代码都是在交互式环境运行。
3. 环境使用
使用R语言交互式环境输入实验所需的代码及文件,使用LX终端(LXTerminal)运行所需命令进行操作。
完成实验后可以点击桌面上方的“实验截图”保存并分享实验结果到微博,向好友展示自己的学习进度。实验楼提供后台系统截图,可以真实有效证明您已经完成了实验。
实验记录页面可以在“我的主页”中查看,其中含有每次实验的截图及笔记,以及每次实验的有效学习时间(指的是在实验桌面内操作的时间,如果没有操作,系统会记录为发呆时间)。这些都是您学习的真实性证明。
二、课程介绍
本门课程翻译自《R and Data Mining: Examples and Case Studies》这本书。这一节课主要介绍一些基本的概念以及数据挖掘中的方法,包括数据挖掘的一般步骤和当前常用的数据挖掘技术。
三、基本概念及操作
1、数据挖掘
概念:数据挖掘是从大量数据中获取有用信息的一个过程。它是一门跨越许多领域的学科,涉及到的领域包括统计学,机器学习,信息检索,模式识别以及生物信息学。数据挖掘在许多领域中被广泛使用,例如零售,金融,信息交流以及社会媒体。
数据挖掘主要的技术包括分类和预测、聚类、异常点检测、关联规则、序列分析、时间序列分析以及文本挖掘,也有一些新的技术例如社交网络分析和情感分析。更多关于数据挖掘技术的细节可以下载Data Mining: Concepts and Techniques这本书。
2、R
R为统计计算和画图提供了一个免费的软件环境。它拥有5606个包,里面的包可以在官网CRAN中下载。浏览CRAN Task Views找到需要的包。
R语言的另一个指南是《R Reference Card for Data Mining》,这本书提供给了R语言用于数据挖掘逻辑包函数的全局索引。
3、数据集
3.1 保存和加载R数据
R里面的数据可以使用save()函数保存为.Rdata文件,并可以使用函数load()加载该.Rdata文件到R中。也可以使用函数rm()移除数据对象。实例如下:
# 将1-10赋值给对象a
> a<-1:10
# 保存文件为“dumData.Rata”
> save(a,file="dumData.Rdata")
# 移除数据对象
> rm(a)
# 重新加载数据对象
> load("dumData.Rdata")
> print(a)
打印结果如下图所示:
3.2 从.csv文件中导入或者导出数据
下面的例子建立了一个数据框df1,并使用.csv()函数将它保存为一个.csv文件,然后使用read.csv()函数将该数据框加载到df2对象中。
# 初始化向量
> var1 <- 1:5
> var2 <- (1:5) / 10
> var3 <- c("R", "and", "Data Mining", "Examples", "Case Studies")
# 使用data.frame()将三个向量组合成一个数据框
> df1 <- data.frame(var1, var2, var3)
# 命名数据框的列名
> names(df1) <- c("VariableInt", "VariableReal", "VariableChar")
> write.csv(df1, "dummmyData.csv", row.names = FALSE)
> df2 <- read.csv("dummmyData.csv")
> print(df2)
输出结果如下图所示:
3.3 使用包‘xlsx’读写excel文件
下面的例子创建了一个拥有三个表格的excel文件“iris.xlsx”,使用函数write.xlsx()鸢尾花的数据写入文件,并且每一个表格里面对应一种鸢尾花。当添加第二个表格和第三个表格的时候,为了防止第一张表格的内容被覆盖,需要使用参数append=T向已经存在的文件中添加新的表格。最后,使用函数read.xlsx()从表格“setosa”中读取数据。
# 加载包
> library(xlsx)
# 列表显示花的种类
> table(iris$Species)
# 将不同种类的鸢尾花数据写入对象,并将对象写入execl文件
> setosa <- subset(iris, Species == "setosa")
> write.xlsx(setosa, file="iris.xlsx", sheetName="setosa", row.names=F)
> versicolor <- subset(iris, Species == "versicolor")
> write.xlsx(versicolor, file="iris.xlsx", sheetName="versicolor",
+ row.names=F, append=T)
> virginica <- subset(iris, Species == "virginica")
> write.xlsx(virginica, file="iris.xlsx", sheetName="virginica",
+ row.names=F, append=T)
# 读取文件中表格里面的数据
> a <- read.xlsx("iris.xlsx", sheetName="setosa")
# 打印前6行观测值包括表头名称
> head(a)
如下图所示:
关于本次实验的更多内容请参考《实验楼课程》。
[译]用R语言做挖掘数据《一》的更多相关文章
- [译]用R语言做挖掘数据《二》
数据探索 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...
- [译]用R语言做挖掘数据《六》
异常值检测 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...
- [译]用R语言做挖掘数据《七》
时间序列与数据挖掘 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用 ...
- [译]用R语言做挖掘数据《五》
介绍 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...
- [译]用R语言做挖掘数据《四》
回归 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...
- [译]用R语言做挖掘数据《三》
决策树和随机森林 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到 ...
- R语言实现金融数据的时间序列分析及建模
R语言实现金融数据的时间序列分析及建模 一 移动平均 移动平均能消除数据中的季节变动和不规则变动.若序列中存在周期变动,则通常以周期为移动平均项数.移动平均法可以通过数据显示出数据长期趋势的变动 ...
- 用R语言 做回归分析
使用R做回归分析整体上是比较常规的一类数据分析内容,下面我们具体的了解用R语言做回归分析的过程. 首先,我们先构造一个分析的数据集 x<-data.frame(y=c(102,115,124,1 ...
- R语言分析朝阳医院数据
R语言分析朝阳医院数据 本次实践通过分析朝阳医院2016年销售数据,得出“月均消费次数”.“月均消费金额”.“客单价”.“消费趋势”等结果,并据此作出可视化图形. 一.读取数据: library(op ...
随机推荐
- pyppeteer初尝滋味
最近在爬几个电商平台网站用的selenium一登录就会有验证,目前这些网站对selenium检测很严格 因为不少大网站有对selenium的js监测机制.比如navigator.webdriver,n ...
- BZOJ 1922--大陆争霸(最短路)
1922: [Sdoi2010]大陆争霸 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 2113 Solved: 947[Submit][Status ...
- Mac下安装HomeBrew
本文章为菲利克斯猫(Felix.mao)原创,转载务必在明显处注明:原文链接:http://blog.csdn.net/maojudong/article/details/7918291 1. 前言 ...
- npm 查看express版本
npm list 名称 eg: npm list express
- apache2 的https配置和代理https后端nodejs配置
先进入 /usr/local/apache2/conf 目录 修改 vim httpd.conf 把下面的去掉注释 LoadModule proxy_module modules/mod_pro ...
- 爬虫实战3:使用request,bs4爬动态加载图片
参考网站:https://blog.csdn.net/Young_Child/article/details/78571422 在爬的过程中遇到的问题: 1.被ban:更改header的User-Ag ...
- 不信任的 .exe 怎么办,用 Windows 沙盒啊!
简评:维基百科,在计算机安全领域,沙盒(sandbox)是种安全机制,为执行中的程式提供的隔离环境.通常是作为一些来源不可信.具破坏力或无法判定程序意图的程序提供实验之用. 微软正在尝试解决人们对运行 ...
- 总结day2 ---- while循环的简单使用, 格式化输出.运算符.以及编码的应用
内容提要 一 : while 循环 while 的基本语句操作 如何终止循环 二 :格式化输出 三 :运算符号 四 :编码初识别 一 : while 循环 1 >>>>whi ...
- SpringBoot + Scala环境部署
在pom.xml文件中添加: <dependencies>中 <!-- 添加Scala依赖 --> <dependency> <groupId>org. ...
- [转载+整理]Nginx Location匹配规则
目录 规则语法 location 分类 匹配顺序: 扩展 location / {}和 location =/ {}的区别 测试 规则语法 语法 匹配规则 空 普通匹配(遵循最大前缀匹配规则, 优先度 ...