API 与 JSON

R 数据导入进阶

Filip Schouwenaars

Instructor, DataCamp

其他数据格式

  • 之前:来自网页的页面与文件

  • JSON

  • 简洁、清晰、结构化

  • 人类可读

  • 计算机易于解析与生成

  • 用于与 Web API 通信

R 数据导入进阶

API

  • 应用程序编程接口

  • 构建软件的一组例程与协议

  • 规定组件如何交互

  • Web API

    • 获取或提交服务器数据的接口

    • HTTP 动词(GET 等)

R 数据导入进阶

Twitter

R 数据导入进阶

《雨人》(1988) 信息

url <- "http://www.imdb.com/title/tt0095953/"
download.file(url, "local_imdb.html")

第4章幻灯片.023.png

R 数据导入进阶

《雨人》JSON(OMDb API)

R 数据导入进阶

jsonlite

  • Jeroen Ooms

  • 改进早期包

  • 一致、健壮

  • 覆盖所有用例

R 数据导入进阶

R 中的《雨人》列表

install.packages("jsonlite")
library(jsonlite)

fromJSON("http://www.omdbapi.com/?i=tt0095953&r=json")
List of 20
 $ Title     : chr "Rain Man"
 $ Year      : chr "1988"
 $ Rated     : chr "R"
 $ Released  : chr "16 Dec 1988"
 $ Runtime   : chr "133 min"
 ...
 $ imdbVotes : chr "359,903"
 $ imdbID    : chr "tt0095953"
 $ Type      : chr "movie"
 $ Response  : chr "True"
  • 结构更清晰!
R 数据导入进阶

Passons à la pratique !

R 数据导入进阶

Preparing Video For Download...