笔记 10 开发数据产品

10.1 shiny

  • 源自 R-studio
  • 动态网络应用
  • 入门版 OpenCPU
  • 高级版 Manipulate
  • install.packages("shiny");libray(shiny)
  • ui.R 控制外观 sever.R 控制计算
  • runApp() 启动应用
  • sever.RshinyServer 之前的代码只在启动应用时执行一次 适合读入数据
  • shinyServer(function(input, output){ 之内的非互动函数只被每个用户执行一次
  • Render* 为互动函数 数值改变就执行一次
  • runApp(display.mode='showcase') 可用来同时高亮显示执行代码
  • reactive 用来加速互动函数外的信息交换
  • actionButton 用来一次提交输入数据 if (input$goButton == 1){ Conditional statements } 用来定义条件语句
  • cat browser() 调试
  • fluidRow 产生表格

10.2 rCharts

  • 主页
  • 动态交互可视化工具
  • require(devtools);install_github('rCharts', 'ramnathv')

10.3 GoogleVis

  • 主页
  • R 代码产生图表 生成html
  • install.packages('googleVis');library(googleVis)
  • 教程

10.4 Slidify

  • 主页
  • html5 幻灯片
  • install.packages("devtools");library(devtools);install_github('slidify', 'ramnathv');install_github('slidifyLibraries', 'ramnathv');library(slidify)
  • author("yufree")
  • YAML 配置幻灯片结构
  • ## 幻灯片开始 --- 加空行表结束 .class #id 自定义css文件id
  • slidify("index.Rmd") 生成 browseURL("index.html") 观看
  • publish_github(user, repo) github发布

10.5 Rpresentation

  • 源自 R-studio
  • 轻量级幻灯片
  • 教程

10.6 yhat

  • 主页
  • 本地提交算法或模型 生成可调用API 支持R与python

10.7 R 包开发

  • DESCRIPTION 指明包内容
  • Package 包名字
  • Title 全名
  • Description 一句话描述
  • Version 版本号
  • Author 作者
  • Maintainer 维护者
  • License 许可协议
  • Depends 依赖
  • Suggests 建议
  • Date 发布日期 YYYY-MM-DD 格式
  • URL 项目主页
  • R 源码
  • Documentation 文档 Rd文件
  • NAMESPACE 关键词 输入输出的函数及类型
  • R CMD build/check newpackage 构建 检查包
  • roxygen2 源文件注释文档

10.8 R 中方法与类型

  • R 面向对象编程
  • 对象用setClass指定类型 用setMethod指定处理类型的方法
  • 对象一般指新的数据类型
  • S3函数对象不算严格 generic处理对象 开放 没有指定类型就用通用方法
  • S4函数对象定义严格 只处理指定类型对象 不可直接调用方法 针对性强
  • stats4 有很多针对性的极大似然估计的对象定义与方法