行话
- 数据规整(Munge/Munging/Wrangling)
指的是将非结构化和(或)散乱数据处理为结构化或整洁形式的整个过程。 - 伪码(Pseudocode)
算法或过程的“代码式”描述,而这些代码本身并不是实际有效的源代码。 - 语法糖(Syntactic sugar)
这是一种编程语法,它并不会带来新的特性,但却能使代码更易读、更易写。
数据
- 表格型数据
- 多维数组
- 由键位列关联的多张表数据
- 均匀或非均匀的时间序列
数据分析任务类别
- 与外界进行交互
读写各种各样的文件格式和数据库。 - 准备
对数据进行清理、修整、整合、规范化、重塑、切片切块、变形等处理以便进行分析。 - 转换
对数据集做一些数学或统计运算以产生新的数据集。比如说根据分组变量对一个大表进行聚合。 - 建模和计算
将数据跟统计模型、机器学习算法、或其他计算工具联系起来。 - 展示
创建交互式的或静态的图片或文字摘要。
导入约定
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
import statsmodels as sm
示例数据
每章的示例数据托管在GitHub仓库,链接为:http://github.com/wesm/pydata-book。
IPython的一些优势
- Tab补全(包括变量、模块、路径、关键字参数等)
- 内省
- 在一个变量前后使用问号?可以显示一些关于该变量的概要信息。
- 使用双问号??可以显示函数的源代码。
- 问号可以和通配符星号*结合在一起使用,会显示所有匹配通配符表达式的命名。例如np.*load*?
- %run命令
如果你想要带运行的脚本使用交互式的IPython命名空间中已有的变量,请使用%run -i 代替普通的%run命令。 - %load魔术函数
在Jupyter notebook中,如果你想将脚本导入一个代码单元,可以使用%load魔术函数。 - 执行剪切板中的程序
- %paste魔术函数
获得剪切板中的所有文本,并在命令行中作为一个代码块去执行。 - %cpaste魔术函数
%cpaste可以给出一个特殊的提示符,让你自由的粘贴代码。
- %paste魔术函数
- 终端快捷键
IPython提供和Linux类似的命令行快捷键,例如Ctrl+u、Ctrl+k等。 - IPython的魔术命令
- 这里的魔术命令指的是IPython的特殊命令,它们并没有被内建到python中去。例如可以用%timeit检查一段python语句的执行时间。
- 大多数魔术命令都可以使用内省的方法查看命令行选项
- 魔术函数可以不加%就使用,只要没有变量被定义为与魔术函数相同的名字即可。这种特性被称为自动魔术。一些魔术函数的可以像python函数一样,其输出可以赋给一个变量。例如:path = %pwd。
- 可以使用%quickref或者%magic探索所有的特殊命令。
- matplotlib集成
- IPython:%matplotlib
- jupyter notebook:%matplotlib inline