本书对Python的计算机编程进行了生动活泼、直观易懂且引人入胜的入门介绍。这本书是专门为没有或几乎没有编程经验的生命科学家而写的,其目的不仅是为他们提供Python编程的基础,而且是让他们有信心和能力开始在自己的研究中使用Python。本书的所有示例均来自广泛的生命科学研究领域,包括生物信息学、结构生物学、发育生物学、进化生物学和生态学,从简单的生化计算和序列分析到对细胞中基因和蛋白质的动态相互作用,或对不断发展的种群中的基因漂移进行建模。书中可以找到如何使用Python进行实验室计算自动化、搜索基因启动子序列、旋转分子键、构建细胞拨动开关、模拟动物皮毛形成的模式、生长虚拟植物、模拟流感流行或进化种群等实用的Python代码写成的完整的示例。
样章试读
目录
- 目录
绪论:欢迎来到尼迪亚王国 1
第1章 Python入门:设置及使用Python 14
1.1 在计算机上安装Python 14
1.2 为您的计算机下载Python的最新版 16
1.3 在macOS计算机上安装Python 16
1.4 在Linux计算机上安装Python 17
1.5 在Windows计算机上安装Python 18
1.6 使用IDLE的Python界面 19
1.7 Python开发环境 20
1.8 安装Python套件管理程序pip 21
1.9 获取示例代码 22
1.10 参考资料和进一步阅读 23
第2章 实验台上的Python:Python语言基础 24
2.1 在Python中声明变量 25
2.2 用Python处理所有的数据类型 27
2.3 第一个真正的Python代码 28
2.4 Python函数 29
2.5 在Python中使用整数和小数 31
2.6 条件语句 33
2.7 参考资料和进一步阅读 37
第3章 理解序列:生物序列和Python的数据结构 38
3.1 序列与字符串 39
3.2 列表及其他 41
3.3 方法与对象 44
3.4 您的朋友——Python字典 45
3.5 用Python实现DNA限制酶的内切功能 48
3.6 参考资料和进一步阅读 53
第4章 统计插值:贝叶斯定理与生物标记物 54
4.1 贝叶斯及其著名定理 55
4.2 贝叶斯定理的应用:生物标记物的性能 56
4.3 贝叶斯定理的数学解析 57
4.4 用Python实现贝叶斯生物标记物函数 58
4.5 用通用贝叶斯函数进行字符串格式化 59
4.6 参考资料和进一步阅读 61
第5章 打开数据之门:读取、解析和处理生物数据文件 62
5.1 用Python打开文件 63
5.2 更改变量类型 65
5.3 出错处理:Python的异常处理 67
5.4 重新开始:解析FASTA文件 70
5.5 参考资料和进一步阅读 73
第6章 生物序列的搜索:基因组和序列的正则表达式 74
6.1 Python的正则表达式库及导入 75
6.2 用正则表达式识别基因启动子 77
6.3 MatchObject:第一个真实的Python对象 78
6.4 Python用于真正的基因组学时太慢了吗? 79
6.5 参考资料和进一步阅读 85
第7章 对象课程:生物序列作为Python的对象 86
7.1 为什么要进行面向对象的编程? 87
7.2 程序的组织——OOP 88
7.3 生物序列处理的OOP实现 89
7.4 命名空间和模块 90
7.5 类定义的结构 90
7.6 类的继承 92
7.7 类变量、实例变量和其他作为变量的类 101
7.8 有关继承和覆盖继承方法的进一步讨论 105
7.9 参考资料和进一步阅读 106
第8章 基因组数据的切片和分块:下一代测序流程 108
8.1 下一代基因测序:从FASTA到FASTQ 110
8.2 调用子流程 113
8.3 pySam:用Python读取比对文件 114
8.4 测序读段的可视化 117
8.5 测序读段的计数 118
8.6 建立命令行工具 119
8.7 最终流程:将所有内容放在一起 123
8.8 下一步的工作 125
8.9 参考资料和进一步阅读 127
第9章 孔板:微量滴定板分析I——数据结构 128
9.1 机器人 129
9.296 孔板简介 129
9.3 用Python类实现多孔板 130
9.4 孔板的遍历 134
9.5 分配和检索孔板的数据 144
9.6 读取和写入CSV文件 146
9.7 孔板中的数学 150
9.8 参考资料和进一步阅读 153
第10章 孔板的进一步探讨:微量滴定板分析Ⅱ——自动化和可视化 154
10.1 孔板的物理映射 155
10.2 在孔板上移动的编程 161
10.3 用matplotlib可视化多孔板 163
10.4 用matplotlib制作色图 164
10.5 matplotlib的绘图命令 167
10.6 不同孔板的布局 172
10.7 参考资料和进一步阅读 173
第11章 分子的3D表示:结构生物学的数学和线性代数 174
11.1 分子键的旋转 175
11.2 分子力学和分子动力学 177
11.3 自己动手去体会程序的运行效率 177
11.4 输入3D数学矩阵 178
11.5 分子系统的Python表示 181
11.6 用matplotlib进行3D可视化 183
11.7 程序测试 186
11.8 计算静电相互作用 187
11.9 参考资料和进一步阅读 188
第12章 打开和关闭基因:用matplotlib可视化生化动力学 191
12.1 简单的转录抑制:乳糖操纵子 192
12.2 NumPy及From...Import简介 193
12.3 双重交互阻遏物:更高效的抑制 196
12.4 相同的浓度、更强的抑制:注释图 199
12.5 参考资料和进一步阅读 203
第13章 梳理网络伪信息:用Python集合挖掘系统生物学数据 204
13.1 用集合制作表格 206
13.2 双字典结构:网络的数据结构 208
13.3 列表推导式 210
13.4 基因调控问题 212
13.5 汇总:使用Python的__main__213
13.6 参考资料和进一步阅读 215
第14章 遗传反馈循环:用Gillespie算法为基因网络建模 216
14.1 二聚体 218
14.2 动态过程 220
14.3 噪声的引入 222
14.4 实际的操作:拨动开关 223
14.5 三合一:开启基因 225
14.6 所有蛋白质最终消亡 227
14.7 生物化学的Python代码 227
14.8 记录参与反应的分子 228
14.9 生物分子的模拟 229
14.10 随机切换问题 234
14.11 参考资料和进一步阅读 234
第15章 种植虚拟花园:用L系统模拟植物生长 237
15.1 增加繁殖率:算法生成规则 238
15.2 用Python的Turtle图形生长蕨类植物 240
15.3 参考资料和进一步阅读 244
第16章 细胞自动机:图灵模式的细胞自动机模型 246
16.1 细胞自动机初始化 248
16.2 创建更新规则 249
16.3 生成细胞自动机涂层图案 252
16.4 形态生成的显示 253
16.5 参考资料和进一步阅读 255
第17章 生态动力学模型:捕食者-猎物动力学的生态建模 256
17.1 种群的起落 259
17.2 绘制捕食者动画——Prey 261
17.3 参考资料和进一步阅读 264
第18章 虚拟流感流行:用基于代理的模型探索流行病学 265
18.1 SIR模型:易感-感染-康复 266
18.2 代理的概念 266
18.3 代理列表:使代理保持直线和狭窄 267
18.4 模拟流行病 271
18.5 提高代理的能力 273
18.6 参考资料和进一步阅读 277
第19章 追寻生活的脚步:Wright-Fisher模型的进化动力学 279
19.1 遗传漂变 281
19.2 绘制遗传漂变 283
19.3 将自然选择添加到Mix 285
19.4 参考资料和进一步阅读 290
后记:因为分手很难做到 291