数据挖掘基础笔记
目录
数据获取 --> 探索分析与可视化 --> 预处理理论 --> 分析建模 --> 模型评估
一、数据获取手段
1.数据仓库
数据库:
面向业务存储
针对应用 OLTP--online transaction processing
组织规范
数据仓库:
面向主题存储
针对分析 OLAP--online analysis processing
可能冗余,相对变化大,数据量大
2.检测与抓取
通过传感器获取
通过抓取网页、接口、文件等获取
3.填写、埋点、日志
用户填写信息
app或网页埋点:
特点流程的信息记录点
操作日志
二、数据学习网站
1.数据竞赛网站:
Kaggle: Google
天池:阿里云
2.数据集网站
ImageNet
Open Image
3.各领域统计数据
统计局
政府机构
公司财报
day01
一、数据挖掘基础环境安装与使用
1.创建虚拟环境
python2:mkvirtualenv 虚拟环境名
python3:mkvirtualenv -p python3 虚拟环境名
2.使用pip命令安装
pip install -r requirements.txt
matplotlib==2.2.2
numpy==1.14.2
pandas==0.20.3
TA-Lib==0.4.16
tables==3.4.2
jupyter==1.0.0
3.中文显示问题解决
1.下载中文字体(黑体,看准系统版本)
如下载 SimHei 字体(或者其他的支持中文显示的字体也行)
2.安装字体
linux下:拷贝字体到 usr/share/fonts 下:
sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf
windows和mac下:双击安装
3.删除~/.matplotlib中的缓存文件
# 缓存文件也可能在.cache中
cd ~/.matplotlib 或 cd ~/.cache/matplotlib
rm -r *
修改配置文件matplotlibrc
vi ~/.matplotlib/matplotlibrc
将文件内容修改为:
font.family : sans-serif
font.sans-serif : SimHei
axes.unicode_minus : False
4.Jupyter Notebook的使用
1)使用命令
# 进入虚拟环境
workon ai
# 输入命令
jupyter notebook
2) cell操作
cell:一对In Out会话被视作一个代码单元,称为cell
Jupyter支持两种模式:
编辑模式(Enter)
命令模式下回车Enter或鼠标双击cell进入编辑模式
可以操作cell内文本或代码,剪切/复制/粘贴移动等操作
命令模式(Esc)
按Esc退出编辑,进入命令模式
可以操作cell单元本身进行剪切/复制/粘贴/移动等操作
3)快捷键操作
两种模式通用快捷键
Shift+Enter,执行本单元代码,并跳转到下一单元
Ctrl+Enter,执行本单元代码,留在本单元
cell行号前的 * ,表示代码正在运行
命令模式:按ESC进入
Y,cell切换到Code模式
M,cell切换到Markdown模式
A,在当前cell的上面添加cell
B,在当前cell的下面添加cell
双击D:删除当前cell
Z,回退
L,为当前cell加上行号 <!--
Ctrl+Shift+P,对话框输入命令直接运行
快速跳转到首个cell,Crtl+Home
快速跳转到最后一个cell,Crtl+End -->
编辑模式:按Enter进入
多光标操作:Ctrl键点击鼠标(Mac:CMD+点击鼠标)
回退:Ctrl+Z(Mac:CMD+Z)
重做:Ctrl+Y(Mac:CMD+Y)
补全代码:变量、方法后跟Tab键
为一行或多行代码添加/取消注释:Ctrl+/(Mac:CMD+/)
屏蔽自动输出信息:可在最后一条语句之后加一个分号
4) markdown
# 一级标题
## 二级标题
...
- 一级缩进
- 二级缩进
-三级缩进
二、Matplotlib
1.Matplotlib
专门用于开发2D图表(包括3D图表)
使用起来及其简单
以渐进、交互式方式实现数据可视化
能将数据更直观的呈现
使数据更加客观、更具说服力
2.Matplotlib图像结构
1) 容器层
容器层主要由Canvas、Figure、Axes组成。
Canvas是位于最底层的系统层,充当画板:
Figure是Canvas上方的第一层,也是操作的应用层的第一层,充当画布:
Axes是应用层的第二层,充当画布上数据的绘图区:
# Axis(坐标轴):坐标系中的一条轴,包含大小限制、刻度和刻度标签
2)辅助显示层
主要包括:
Axes外观(facecolor)
边框线(spines)
坐标轴(axis)
坐标轴名称(axis label)
坐标轴刻度(tic