R语言学习笔记-机器学习1-3章
在折腾完爬虫还有一些感兴趣的内容后,我最近在看用R语言进行简单机器学习的知识,主要参考了《机器学习-实用案例解析》这本书。
这本书是目前市面少有的,纯粹以R语言为基础讲解的机器学习知识,书中涉及11个案例。分12章。作者备注以及代码部分都讲得比较深。不过或许因为出书较早,在数据处理方面,他使用更多的是plyr包,而我用下来,dplyr包效果更好。所以许多涉及数据处理的代码,其实可以用更简洁的方法重写。但是思路却是实打实的精华。
我之前在某长途动车上啃完了前三章,两个案例。但越往后读,越觉得后面案例处理方法越复杂,更加晦涩了,需要更多时间消化,因此暂停下来,先把前两个案例给理理顺,消化一下结构点。
书中案例数据及代码均可在官方github中下载到,地址为https://github.com/johnmyleswhite/ML_for_Hackers
案例1:美国UFO观察
该案例用的是一个含有60,000多条不明飞行物的目击记录和报告的数据集。需要回答UFO出现是否有周期性规律,以及地域规律两个问题。主要涉及数据清洗环节。
在研读后,我绘制的流程图如下图:
案例2:二分法判别垃圾邮件
该案例用的是来自于SpamAssasin的邮件,它分为垃圾邮件spam,易识别的正常邮件easy ham,不易识别的正常邮件hard ham三个类型。案例目的是做一个分类器,能够通过词频特征(如html等)快速识别邮件的类型。
使用的是朴素贝叶斯分类法。
绘制的流程图及注意事项见下:
流程图用visio 2013绘制。很喜欢它的手绘风流程图,之前想尝试一下其他流程图软件,比较下来,还是visio最好用啊……
接下来的本月目标
1)金融时间序列
2)机器学习4-7章
R语言学习笔记-机器学习1-3章的更多相关文章
- R语言学习笔记:小试R环境
买了三本R语言的书,同时使用来学习R语言,粗略翻下来感觉第一本最好: <R语言编程艺术>The Art of R Programming <R语言初学者使用>A Beginne ...
- R语言学习笔记之: 论如何正确把EXCEL文件喂给R处理
博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html ---- 前言: 应用背景兼吐槽 继续延续之前每个月至少一次更新博客,归纳总结学习心得好习惯. ...
- R语言学习笔记(二)
今天主要学习了两个统计学的基本概念:峰度和偏度,并且用R语言来描述. > vars<-c("mpg","hp","wt") &g ...
- R语言学习笔记:基础知识
1.数据分析金字塔 2.[文件]-[改变工作目录] 3.[程序包]-[设定CRAN镜像] [程序包]-[安装程序包] 4.向量 c() 例:x=c(2,5,8,3,5,9) 例:x=c(1:100) ...
- R语言学习笔记(1)
第一章:R语言介绍 一 R的使用 1 R是一种区分大小写的解释型语言.R语句由函数和赋值构成.R使用<-作为赋值符号.例如: x<-rnorm(5) 创建了一个名为x的向量对象,它包含5个 ...
- R语言学习笔记——C#中如何使用R语言setwd()函数
在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//")> setwd("e:\桌面\")> s ...
- R语言学习笔记(一)
1.不同的行业对数据集(即表格)的行和列称谓不同,统计学家称其为观测(observation)和变量(variable): 2.R语言存储数据的结构: ①向量:类似于C语言里的一位数组,执行组合功能的 ...
- R语言学习笔记
向量化的函数 向量化的函数 ifelse/which/where/any/all/cumsum/cumprod/对于矩阵而言,可以使用rowSums/colSums.对于“穷举所有组合问题" ...
- R语言学习笔记-变量的作用域
R语言是如何将变量值和变量绑定的 在r语言中,当前的 workspace就是global enviroment,当输入变量名时,首先会在global enviroment中搜索该变量,如有,则将它显示 ...
随机推荐
- HDU2767Proving Equivalences[强连通分量 缩点]
Proving Equivalences Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- java Socket编程-基于UDP
package com.wzy.UDPTest; import java.net.DatagramPacket; import java.net.DatagramSocket; import java ...
- NYOJ 205
大数取模算法: 这个又不同于幂取模算法,对于几百万位的数字取模,直接的方法是行不通的.最好利用数论的知识 (a*b)%c = ((a%c)*b)%c ;利用这个公式我们只要从n的一次方开始不断计算,乘 ...
- PHP代码重用与函数编写
代码重用与函数编写 1.使用require()和include()函数 这两个函数的作用是将一个文件爱你载入到PHP脚本中,这样就可以直接调用这个文件中的方法.require()和include()几 ...
- 前端MVC学习总结——AngularJS验证、过滤器
前端MVC学习总结--AngularJS验证.过滤器 目录 一.验证 二.过滤器 2.1.内置过滤器 2.1.1.在模板中使用过滤器 2.1.2.在脚本中调用过滤函数 2.2.自定义过滤器 三.指令( ...
- Rect 和 Bounds
Rect 表示一个2D矩形区域 Bounds 表示一个3D的方块区域 http://www.cnblogs.com/crazylights/p/3977348.html
- idea快捷键(自用)
idea快捷键(自用) 1.比如输入eclipse下面的main,sysout等,在idea里面同样可以实现,如下: sysout(sout 按tab),main(psvm按tab),具体可按照ctr ...
- http缓存相关头
https://mp.weixin.qq.com/s/qOMO0LIdA47j3RjhbCWUEQ 这里说的一下我对http控制客户端缓存的头的理解. 在请求一个静态文件的时候(图片,css,js)等 ...
- flask+sqlite3+echarts3+ajax 异步数据加载
结构: /www | |-- /static |....|-- jquery-3.1.1.js |....|-- echarts.js(echarts3是单文件!!) | |-- /templates ...
- jquery修改带!important的css样式
由于需求的需要,今天在用jquery修改一个弹出框的样式的时候,由于有一个按钮有padding-left:12px;导致内间距空出来的这一块颜色用普通的方式无法改变. 普通的jquery修改css的方 ...