介绍

一、实验说明

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语言做挖掘数据《一》的更多相关文章

  1. [译]用R语言做挖掘数据《二》

    数据探索 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...

  2. [译]用R语言做挖掘数据《六》

    异常值检测 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...

  3. [译]用R语言做挖掘数据《七》

    时间序列与数据挖掘 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用 ...

  4. [译]用R语言做挖掘数据《五》

    介绍 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...

  5. [译]用R语言做挖掘数据《四》

    回归 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...

  6. [译]用R语言做挖掘数据《三》

    决策树和随机森林 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到 ...

  7. R语言实现金融数据的时间序列分析及建模

    R语言实现金融数据的时间序列分析及建模 一 移动平均    移动平均能消除数据中的季节变动和不规则变动.若序列中存在周期变动,则通常以周期为移动平均项数.移动平均法可以通过数据显示出数据长期趋势的变动 ...

  8. 用R语言 做回归分析

    使用R做回归分析整体上是比较常规的一类数据分析内容,下面我们具体的了解用R语言做回归分析的过程. 首先,我们先构造一个分析的数据集 x<-data.frame(y=c(102,115,124,1 ...

  9. R语言分析朝阳医院数据

    R语言分析朝阳医院数据 本次实践通过分析朝阳医院2016年销售数据,得出“月均消费次数”.“月均消费金额”.“客单价”.“消费趋势”等结果,并据此作出可视化图形. 一.读取数据: library(op ...

随机推荐

  1. c#去除DataTable空列

    网上搜了好多,没找到能用的,自己写一个,有发现错误的给我留言. private void RemoveNULLColumns(ref DataTable data)//删除空列 { try { Dat ...

  2. DOS文件操作命令

    内部命令 COPY---文件固执命令 格式:COPY [源盘:][路径]<源文件名> [目标盘][路径]<目标文件名> 拷贝一个或多个文件到指定盘上 1)COPY是文件对文件的 ...

  3. jzoj3717

    #include<bits/stdc++.h> using namespace std; extern int main2(void) __asm__ ("main2" ...

  4. Sublime关于tab转空格的设置技巧

    在编写大的工程的代码的时候,会要求一些多余的字符不应该存在,比如说末尾不应该有空格或者Tab这样的字符,比如说所有的Tab应该变成空格,这样工程不管在什么样的编辑器下看,格式都会比较统一,等等,可是如 ...

  5. DBHelper--Java JDBC SSH 连接数据库工具类

    概述 JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库. ----------------------------- ...

  6. [Swift实际操作]八、实用进阶-(1)Swift语言中的两种单例模式实际操作

    本文降温你解析常见的单例模式.单例模式可以保证一个类仅有一个实例,同时这个类还必须提供一个访问该类的全局访问点. 首先导入需要使用到的界面工具框架 import UIKit 单例对象保证了只有一个实例 ...

  7. Set的总结

    Set最重要的操作是查找,为查找而设计.存入HashSet的元素必须定义hashCode(); Set不保存重复的元素,元素必须唯一.通过equals()方法一确保对象的唯一性. Set中最常被用于归 ...

  8. mybatis的执行流程

    1.SqlSessionFactoryBuilder与SqlSessionFactory 我们一般在使用mybatis是都会通过new SqlSessionFactoryBuilder.build(. ...

  9. IIFE格式js写法

    创建 加载文件方法 输出方法 方法书写 输出自定义变量 完整写法

  10. iOS学习笔记(6)——翻译苹果文档About Windows and Views

    About Windows and Views 关于窗口和视图 In iOS, you use windows and views to present your application’s cont ...