# 第0章：课程介绍与学习路线图

> 本章回答三个问题：这套系统能帮你做什么？怎么学最有效？以及一个完整课题的全貌是什么？

---

## 0.1 为什么设计这套系统？

### 科研现实中的常见困境

| 困境 | 表现 | 本系统的解决 |
|------|------|-------------|
| **碎片化学习** | 东学一点R语言，西学一点实验，串不起来 | 10章一条主线，从数据到论文 |
| **代码不会改** | 网上抄的代码，报错不知道怎么办 | 逐行讲解代码逻辑，不是"复制粘贴" |
| **实验不会做** | 看文献知道要做什么，但不知道具体步骤 | 详细到移液枪用多少微升的protocol |
| **结果不会解释** | 跑出了一堆图，不知道哪些能放进论文 | 每步都说明"这个结果在论文里怎么呈现" |

### 学完的真实产出

学完这套系统，你将拥有一份**可以直接投稿的完整课题**：
- 一套独立完成的生物信息学分析流程
- 一个验证过的核心基因（有实验数据）
- 一个预测的治疗药物（有分子对接数据）
- 一篇按SCI标准撰写的论文初稿

---

## 0.2 这套科研流程的全貌

先抬头看路，再低头走路。下面是一个完整课题的**标准流程**：

```
┌─────────────────────────────────────────────────────────────────────┐
│                        第一阶段：提出问题                             │
│  临床观察：COPD患者常合并糖尿病，两者可能有共同机制                    │
│  科学问题：哪些核心基因同时参与COPD和糖尿病的病理过程？                │
└─────────────────────────────────────────────────────────────────────┘
                                  ↓
┌─────────────────────────────────────────────────────────────────────┐
│                        第二阶段：信息学筛选                           │
│  ① 从GEO数据库下载COPD和糖尿病的基因表达数据                         │
│  ② 数据清洗、标准化、批次校正                                        │
│  ③ 差异表达分析 → 找出疾病vs正常的差异基因                           │
│  ④ 机器学习（RF + LASSO + SVM）→ 筛选核心基因                        │
│  ⑤ PPI网络 + 功能富集 → 验证基因的生物学意义                         │
│  产出：3-5个候选核心基因 + 分析图表                                  │
└─────────────────────────────────────────────────────────────────────┘
                                  ↓
┌─────────────────────────────────────────────────────────────────────┐
│                        第三阶段：实验验证                             │
│  ① 建立COPD+糖尿病合并细胞模型                                       │
│  ② qPCR验证核心基因的mRNA表达变化                                    │
│  ③ Western Blot验证蛋白水平                                          │
│  ④ 细胞功能实验（增殖、凋亡、炎症、氧化应激）                        │
│  ⑤ （进阶）siRNA干扰 + 功能rescue实验                                │
│  产出：实验数据图 + 统计学验证                                       │
└─────────────────────────────────────────────────────────────────────┘
                                  ↓
┌─────────────────────────────────────────────────────────────────────┐
│                        第四阶段：网络药理学                           │
│  ① 以核心基因为靶点，筛选潜在治疗药物                                │
│  ② 构建"药物-靶点-疾病"网络                                        │
│  ③ GO/KEGG富集分析药物的作用机制                                     │
│  ④ 分子对接验证药物与靶蛋白的结合能力                                │
│  产出：药物预测表 + 分子对接3D图 + 机制通路图                        │
└─────────────────────────────────────────────────────────────────────┘
                                  ↓
┌─────────────────────────────────────────────────────────────────────┐
│                        第五阶段：论文撰写                             │
│  按IMRaD结构（引言/方法/结果/讨论）撰写论文                           │
│  投稿至Frontiers in Immunology / International Journal of COPD 等    │
└─────────────────────────────────────────────────────────────────────┘
```

**关键认识**：这是一个**闭环**——信息学预测 → 实验验证 → 药理学应用，三个环节互相支撑。

---

## 0.3 怎么学最有效？

### 推荐的学习模式：3-2-1法则

| 数字 | 含义 | 具体操作 |
|------|------|----------|
| **3** | 三遍学习 | 第一遍：通读理解；第二遍：跟着操作；第三遍：独立复现 |
| **2** | 两种输入 | 看讲义（视觉）+ 敲代码（动手），缺一不可 |
| **1** | 一个输出 | 每章学完必须有产出（一张图、一段代码、一份笔记） |

### 配套的学习工具

```
1. RStudio —— 代码实操（必装）
2. 记事本/语雀 —— 学习笔记（推荐记"我遇到的问题和解决方案"）
3. XMind —— 画流程图（每章画一张思维导图）
4. Timer —— 番茄工作法（25分钟专注 + 5分钟休息）
```

### 遇到错误怎么办？

**错误是学习的一部分**，尤其是编程。遇到错误的标准处理流程：

```
① 先自己看报错信息（Error/Warning后面的内容）
    ↓
② 把报错信息复制到百度/Google搜索
    ↓
③ 检查是不是拼写错误、括号不匹配、路径问题（80%的错误都是这些）
    ↓
④ 对照课程代码，逐行比较差异
    ↓
⑤ 在答疑区提问（带上完整的报错信息和你的代码）
```

---

## 0.4 R语言安装与环境配置

### 4.1 安装R

访问 https://cran.r-project.org/ → 选择你的操作系统 → 下载最新版本 → 一路下一步安装。

**验证安装**：
```r
# 打开R（不是RStudio，就是R本身），输入：
version
# 应显示版本号，如 R version 4.4.0
```

### 4.2 安装RStudio

访问 https://posit.co/download/rstudio-desktop/ → 下载免费版 → 安装。

**RStudio界面介绍**：

```
┌─────────────────┬─────────────────┐
│   Source        │    Environment  │
│  （代码编辑器）  │  （变量查看）    │
│                 ├─────────────────┤
│  你在这里写代码  │ Files / Plots / │
│                 │ Packages / Help │
├─────────────────┤  （文件/图形/    │
│   Console       │   包/帮助）      │
│  （运行结果）    │                 │
└─────────────────┴─────────────────┘
```

### 4.3 设置工作目录（重要！）

```r
# 方法1：菜单操作
# Session → Set Working Directory → Choose Directory

# 方法2：代码设置（推荐，每次打开RStudio运行一次）
setwd("/Users/admin/workspace/web/kaoyan")  # Mac路径
# 或
setwd("D:/kaoyan")  # Windows路径

# 查看当前工作目录
getwd()
```

### 4.4 安装基础包

打开RStudio，在Console中逐行运行：

```r
# 基础数据处理包
install.packages("tidyverse")    # 数据科学全家桶
install.packages("data.table")   # 快速读取大文件

# 可视化包
install.packages("ggplot2")      # 最强大作图包
install.packages("pheatmap")     # 热图
install.packages("VennDiagram")  # 韦恩图

# 统计分析包
install.packages("glmnet")       # LASSO回归
install.packages("randomForest") # 随机森林
install.packages("e1071")        # SVM
install.packages("caret")        # 机器学习工具箱
install.packages("pROC")         # ROC曲线

# 生物信息学包（通过Bioconductor安装）
if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")

BiocManager::install("GEOquery")   # 下载GEO数据
BiocManager::install("limma")      # 差异分析
BiocManager::install("edgeR")      # RNA-seq差异分析
BiocManager::install("org.Hs.eg.db") # 人类基因注释

# 富集分析包
BiocManager::install("clusterProfiler")
BiocManager::install("enrichplot")
BiocManager::install("DOSE")

# 网络分析包
install.packages("igraph")         # 图论分析
install.packages("ggraph")         # 网络可视化
install.packages("STRINGdb")       # STRING数据库接口
```

**验证安装**：
```r
library(ggplot2)
library(limma)
library(clusterProfiler)
# 如果没有报错，说明安装成功
```

---

## 0.5 本课程的数据集

为统一教学，本系统使用以下公共数据集：

| 数据集 | 疾病 | 样本 | 平台 | 用途 |
|--------|------|------|------|------|
| GSE38974 | COPD | 87例 vs 42例 | GPL570 | 训练集 |
| GSE57148 | COPD | 30例 vs 20例 | GPL14550 | 验证集 |
| GSE25724 | T2DM | 10例 vs 10例 | GPL96 | 训练集 |
| GSE29221 | T2DM | 15例 vs 15例 | GPL570 | 验证集 |

> **注意**：这些数据集都是公开的GEO数据，课程会教你如何下载。不需要提前准备。

---

## 0.6 本章作业

1. ✅ 安装R和RStudio，截图确认能打开
2. ✅ 安装所有列出的R包，运行`library()`验证无报错
3. ✅ 设置你的工作目录，运行`getwd()`确认路径正确
4. ✅ 在RStudio的Console中运行：`print("Hello, Bioinformatics!")`
5. ✅ 写下你的学习计划和目标（1-2句话即可）

---

## 0.7 下一章预告

**第1章：生物信息学基础与R语言入门**

我们将学习：
- 什么是基因表达矩阵？行和列分别代表什么？
- R语言基础：变量、向量、数据框、函数
- GEO数据库的基本概念
- 读取和处理表达数据

**课后阅读**（可选）：
- 《R语言实战》第1-4章
- GEO数据库官方帮助文档：https://www.ncbi.nlm.nih.gov/geo/info/
