第1课 数据工具箱
一、工具图
SciPy /matplotlib / pandas / scikit-learn 一个也不能少
二、数据分析过程
- Inquire 定义问题(好的问题是成功的一半)
- Obtain 收集数据
- scrub 数据整理
- Explore 数据探索 matplotlib
- Model 建模 建立因素关系 SK learn
- INterpret 展示 BOKEH
三、数据相关模块
3.1 IPython:交互环境
增强的python shell ,提供IPython Notebook,是一个交互平台,是一个计算过程的文档
兼容markdown,能调用远程数据
PS:WIN平台用户可以使用Jupyter Notebook软件,效果不错
3.2 NumPy: 数据结构和矩阵计算
NumPy是一个定义了数值数组和矩阵类型和它们的基本运算的语言扩展。它包括多维数组 array、向量化计算、
线性代数运算、集成C代码,速度快。
补充材料:
傅里叶变换
可爱的 Python: Numerical Python
3.3 SciPy:科学计算
SciPy是另一种使用NumPy来做高等数学、信号处理、优化、统计和许多其它科学任务的语言扩展。它包括积分,微分,最优化,概率函数。
补充材料:
SciPy入门指南
3.4 Matplotlib:数据绘图
matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell (ala MATLAB®* or Mathematica®†), web application servers, and six graphical user interface toolkits.
它提供了与matlab类似的API功能。
3.5 Pandas 提供数据处理结构
pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.
pandas is a NUMFocus sponsored project. This will help ensure the success of development of pandas as a world-class open-source project.
pandas 提供了Dataframe数据结构,操作数据。支持时间序列、支持各种输入输出
补充材料:
10 Minutes to pandas
Pandas 完成Excel 中的常见任务
其它涉及模块
- Requests:抓取网页数据
- Beautiful Soup:解析网页数据
- Flask: web 框架
- Sqlite3:数据库接口
- Pyspark:Spark的接口
- nltk:语言处理
- Networkx:社交网络分析
- theano:深度学习
- scikit-learn:机器学习模型
四、Linux相关操作
4.1 常用命令
- 显示日期的指令: date
- 显示日历的指令:cal
-
改变文件的权限:chmod
sudo chmod 777 XXX 强制赋权 - 变换目录:cd
- 显示当前所在目录:pwd
- 建立新目录:mkdir
- 档案与目录的显示:ls
- 复制档案或目录:cp
- 移除档案或目录:rm
- 移动档案与目录,或更名:mv
- 查看文件头几行:head
- 看尾几行:tail
- 寻找特定档案:find