笔记 6 可复算性研究

6.1 Replication

  • 科学研究的的终极标准是研究证据可独立发现与验证
  • 并非所有结果都可以重复

6.2 Reproducible

  • 可重复的数据分析过程与代码
  • 数据维度增高
  • 现有数据可被整合入更大的数据集
  • 计算机条件允许

6.3 研究流程

6.4 数据分析步骤

  • 定义问题

  • 背后要有科学假设或问题
  • 从大到小 具体定义

  • 定义理想数据

  • 描述性的 <- 总体数据
  • 探索性的 <- 有属性测量的样本数据
  • 推断性的 <- 合适的总体 随机采样
  • 预测性的 <- 来自同一总体 有训练集与测试集的样本
  • 因果性的 <- 随机性研究
  • 机械性的 <- 系统中所有组成部分的数据

  • 决定可获取数据

  • 网络免费数据
  • 购买数据
  • 注意使用条款
  • 数据不存在 自己创造 <- 实验

  • 获取数据

  • 原始数据
  • 引用来源
  • 网络数据注明数据来源URL与获取时间

  • 整理数据

  • 原始数据需要整理
  • 如果事先处理过要搞清楚如何处理的
  • 了解数据来源
  • 需要重新格式化 采样 <- 记录步骤
  • 判断数据是否合适 不合适重新获取

  • 探索性数据分析

  • 描述性总结数据
  • 检查缺失值
  • 绘制探索性图
  • 尝试探索性分析 例如聚类

  • 统计预测/建模

  • 基于探索性分析
  • 根据问题确定方法
  • 数据转换要解释
  • 测定的不确定性要考虑

  • 解释结果

  • 描述
  • 相关
  • 推断
  • 预测

  • 质疑结果

  • 问题
  • 数据源
  • 处理过程
  • 分析
  • 结论

  • 整合写出结果

  • 从问题角度出发
  • 形成一个故事
  • 不要包含分析过程除非用来说明问题 消除质疑
  • 以故事而不是时间顺序描述
  • 图片要漂亮

  • 写出可重复的R代码

  • Rmarkdown文件

6.5 数据分析文件结构

  • Data

  • Raw data 来自网络在Readme里注明url 描述 日期
  • Processed data 命名体现处理过程 Readme里注明处理过程

  • Figures

  • Exploratory figures 不必考虑装饰
  • Final figures 只考虑装饰

  • R code

  • Raw scripts 不必过分注释 版本控制 不一定用得上
  • Final scripts 注释清晰 包括处理细节 只包括文章需要费分析
  • R Markdown files (optional)

  • Text

  • Readme files 按步骤记录清晰
  • Text of analysis 包括前言 方法 结果 结论 讲故事 有引用

6.6 文本化统计编程-Knitr

  • markdown是轻量化结构语言
  • R markdown 是轻量化统计结构语言
  • 文本+代码块 逻辑清晰
  • 文本语言可用latex markdown
  • 代码块可用R
  • 不用保存输出
  • 可缓存结果 cacher包

6.7 结果通讯

  • 研究论文的信息层级

  • 题目/作者名单
  • 摘要
  • 主体/结果
  • 支持材料/细节
  • 代码/数据

  • 邮件汇报的信息层级

  • 题目最好一行一句
  • 描述问题 如何实验 总结发现
  • 简明扼要
  • 如果有问题 写成yes/no形式
  • 附件齐全严谨

6.8 检查列表

  • 数据选取得当
  • 问题简单专一
  • 队友靠谱
  • 兴趣驱动
  • 不要手动处理数据 全部交给计算机
  • 少用交互界面 用命令行界面并记录历史
  • 使用版本控制 处理降速而冷静
  • 记录软件操作环境 sessionInfo()
  • 不保存结果保证数据可重复
  • 使用随机数要说明种子
  • 原始数据-处理数据-分析-报告
  • 考虑从哪一步开始数据重复性变差

6.9 基于证据的数据分析

  • 可重复性研究不保证结果是对的
  • 发表后研究存在动因 应关注数据生成前的过程
  • 设定基于证据研究的路线图
  • 减少研究人员的自由度
  • 提出区域研究范式