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 ...
随机推荐
- Android APP 读取 AndroidManifest.xml 中的版本信息详解
APP都会涉及到版本的问题,Android APP的版本信息保存在AndroidManifest.xml文件的顶部.如下图: 有2个属性表示,“android:versionCode”和“androi ...
- 使用IntelliJ IDEA搭建多maven模块JAVA项目
一.新建项目和模块 步骤: 1. 新建一个项目,因为maven管理jar包非常方便,故此处建立一个maven项目:New Project->Maven->(Create from arch ...
- 洛谷P1280 尼克的任务[DP]
题目描述 尼克每天上班之前都连接上英特网,接收他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成. 尼克的一个工作日为N分钟,从第一分钟开始 ...
- 关于包含pom.xml的开源项目如何导入
1. 开源项目导入eclipse的一般步骤 2. 使用Eclipse构建Maven项目 (step-by-step) 3. 第一次安装和使用maven
- rpc框架之gRPC 学习 - hello world
grpc是google在github于2015年开源的一款RPC框架,虽然protobuf很早google就开源了,但是google一直没推出正式的开源框架,导致github上基于protobuf的r ...
- .net Core学习笔记:Windows环境搭建
1.安装 VS2015 Update3.如果已经安装了VS2015,但不是Update3版本,请在VS的工具 --> 扩展与更新 中执行update3的升级(大约需要2小时). 2..net C ...
- JS组件系列——Form表单验证神器: BootstrapValidator
前言:做Web开发的我们,表单验证是再常见不过的需求了.友好的错误提示能增加用户体验.博主搜索bootstrap表单验证,搜到的结果大部分都是文中的主题:bootstrapvalidator.今天就来 ...
- Could not execute action
2.Could not execute action 原因:action成员变量有空值,要访问方法中,使用了该成员变量 参考: http://www.blogjava.net/javagrass/ar ...
- 安卓 service
public class MyService extends Service { public MyService() { } @Override public IBinder onBind(Inte ...
- 每个程序员都会的35个jQuery小技巧!
1. 禁止右键点击$(document).ready(function(){ $(document).bind("contextmenu",function(e){ return ...