Coursera-Getting and Cleaning Data-week1-课程笔记
课程概述
Getting and Cleaning Data是Coursera数据科学专项的第三门课,有中文翻译。但是由于中文区讨论没有英文区热闹,以及资料积累,强烈建议各位同时选报中文项目和英文项目,可以互相匹配学习。
Week1的课程概括下来,主要介绍了getting and cleaning data的目的,即从不同数据源里获得整洁数据集(Tidy Data),以及其方法。
包括
- download.file() :直接从网站上下载数据,但要点明其存放位置(destfile)
- read.csv/read.table/fread: 读取本地数据。其中fread需要事先加载data.table包,当数据量比较大时,使用data.table包速度极快,且筛选较易3. xlsx包可以读取excel数据。不过根据论坛学员反馈,其对系统环境要求较高,譬如java等。实际工作中,用csv或许更合适
- XML包可用于抓取网络数据。在quiz里演示了一个XML包抓取zipcode的代码,很强大。
- JSON,不过这里我还没听完
- data.table包,感觉跟dplyr有的一拼,都很简洁,关键代码是fread
代码解析
- csv
#path是一段网址,csv格式
path<-"data.csv"
download.file(path,destfile="F:/test1.csv")
#需要用read.csv再读入数据库里,这里要指定位置
- XML
library(XML)
#用xmlTreeParse读入xml数据。这里如果不用useInternalNodes的话,bc内会出来两个list,估计其中一个是数据的特殊储存,如元数据一样的东西?
bc<-xmlTreeParse("F:/getdata-data-restaurants.xml",useInternalNodes = FALSE)
bc1<-xmlTreeParse("F:/getdata-data-restaurants.xml",useInternalNodes = TRUE)
bcnote<-xmlRoot(bc)
class(bc)
class(bc1)
class(bcnote)
#通过class可以看到,跟直接读入的bc数据集不同,在xmlRot后,增加了新的类型数据。
#在这里,讲义里介绍的内容是,用xpathSApply来获得新的数据集【认真看讲义和视频有惊喜
d<-xpathSApply(bcnote,"//neighborhood",xmlValue)
XML包的介绍,使我们初步掌握了网页抓取技术的方法。
在英文讨论区里,有人分享了一些关于XML深入学习的知识,先暂时记下链接,以后应该会有用:)
- XML Code Review Request
- Error: XML content does not seem to be XML
- Looking for more good XML tutorials
结尾
在这段时间的学习里,工具上有了新的变化
开始使用R markdown来写blog,认识与入门 Markdown
学习ggplot2,看完了半本ggplot2的制图书。打算结合经典图表系列,一个个仿造这些图。必须感慨一下,开发ggplot2的Hadley Wickham真的太牛了!当你深入学习R的时候,你会很惊讶的发现Hadley无处不在……无论是制图(ggplot2),数据整理(dplyr,plyr,reshape2),甚至是GUI(RStudio),哪里都是他,哪里有牛包,哪里就有他
在Coursera讨论区看到一个几乎称得上爷爷辈的人在学R。他头像里都有白胡子了,自称在IT做了很多年,但是从来不会停止学习的脚步,现在在跟我们一起学coursera
有句话说得好,不怕你聪明,就怕比你聪明的人在拼命的,持续不断的努力。各位互勉。
博客总目录,记录学习R与数据分析的一切:http://www.cnblogs.com/weibaar/p/4507801.html
Coursera-Getting and Cleaning Data-week1-课程笔记的更多相关文章
- Data Visualization 课程 笔记1
对数据可视化比较有兴趣,因此最近在看coursera上伊利诺伊大学香槟分校的数据可视化课程,做了一些笔记. 1. 定义 Data visualization is a high bandwidth c ...
- Data visualization 课程 笔记3
Learn how humans work to create a more effective computer interface 三种reasoning的方式 Deductive Reason ...
- Data Visualization 课程 笔记2
2-D Graphics vector graphics : the graphics that used for drawing shapes with vertices, strokes and ...
- Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归)
title: Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归) tags: 机器学习, 学习笔记 grammar_cjkRuby: true --- 之前看过一遍,但是总是模 ...
- 操作系统学习笔记----进程/线程模型----Coursera课程笔记
操作系统学习笔记----进程/线程模型----Coursera课程笔记 进程/线程模型 0. 概述 0.1 进程模型 多道程序设计 进程的概念.进程控制块 进程状态及转换.进程队列 进程控制----进 ...
- 学习笔记(四): Representation:Feature Engineering/Qualities of Good Features/Cleaning Data/Feature Sets
目录 Representation Feature Engineering Mapping Raw Data to Features Mapping numeric values Mapping ca ...
- ML:吴恩达 机器学习 课程笔记(Week1~2)
吴恩达(Andrew Ng)机器学习课程:课程主页 由于博客编辑器有些不顺手,所有的课程笔记将全部以手写照片形式上传.有机会将在之后上传课程中各个ML算法实现的Octave版本. Linear Reg ...
- Linux内核分析课程笔记(一)
linux内核分析课程笔记(一) 冯诺依曼体系结构 冯诺依曼体系结构实际上就是存储程序计算机. 从两个层面来讲: 从硬件的角度来看,冯诺依曼体系结构逻辑上可以抽象成CPU和内存,通过总线相连.CPU上 ...
- Andrew Ng机器学习课程笔记--汇总
笔记总结,各章节主要内容已总结在标题之中 Andrew Ng机器学习课程笔记–week1(机器学习简介&线性回归模型) Andrew Ng机器学习课程笔记--week2(多元线性回归& ...
- Andrew 机器学习课程笔记
Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...
随机推荐
- 理解 OpenStack 高可用(HA)(2):Neutron L3 Agent HA 之 虚拟路由冗余协议(VRRP)
本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1)OpenStack 高可用方案概述 (2)Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3)N ...
- 怎样制作FL Studio步进音序器中的节奏
了解了FL Studio一些操作功能后,我们就要去用这些操作功能完成我们想要的作品.所以今天小编就来带领大家在FL Studio的步进音序器中制作出简单的节奏,与此同时大家也会了解到通道的几个基础功能 ...
- POJ1236Network of Schools[强连通分量|缩点]
Network of Schools Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 16571 Accepted: 65 ...
- POJ2001Shortest Prefixes[Trie]
Shortest Prefixes Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 17683 Accepted: 768 ...
- [AR]高通Vuforia之Frame Markers
软件环境 SDK:FrameMarkers-6-0-112.unitypackage(从官网 -> Download -> Samples -> Core Features 下载 ) ...
- Spring事务管理----声明式:利用TransactionProxyFactoryBean生成事务代理
通常建议采用声明式事务管理.声明式事务管理的优势非常明显:代码中无需关于关注事务逻辑,让spring声明式事务管理负责事务逻辑,声明式事务管理无需与具体的事务逻辑耦合,可以方便地在不同事务逻辑之间切换 ...
- c# 传递Null的string值导致的调用C++的dll报错 Attempted to read or write protected memory.
c# 调用C++的dll报错 Attempted to read or write protected memory: 原因是:c# 传递Null的string值导致的,将Null改为string ...
- sql总结(3)---比较全
一.交叉连接(CROSS JOIN) 交叉连接(CROSS JOIN):有两种,显式的和隐式的,不带ON子句,返回的是两表的乘积,也叫笛卡尔积. 例如:下面的语句1和语句2的结果是相同的. 语句1:隐 ...
- 新书《编写可测试的JavaScript代码 》出版,感谢支持
本书介绍 JavaScript专业开发人员必须具备的一个技能是能够编写可测试的代码.不管是创建新应用程序,还是重写遗留代码,本书都将向你展示如何为客户端和服务器编写和维护可测试的JavaScript代 ...
- hibernate通过xml配置文件实现表与实体的映射
这里讨论的是一对多的关系 在做公交卡系统,会涉及到两张表,忽略两种表的作用,只关心他们之间的关系 : 卡规格表和卡类表,一种卡规格会对应多个卡类 实体类: /** * 卡类型表的实体 */ publi ...