【数据挖掘】数据挖掘和数据分析基础

参考文献:《Python数据分析与挖掘实战》张良均等

数据挖掘建模过程

  1. 定义挖掘目标:理解任务,确定指标
  2. 数据采样:注意数据的完整性和有效性
  3. 数据探索:异常值分析、缺失值分析、相关性分析、周期性分析
  4. 数据预处理:数据筛选、数据变量转换、缺失值处理、坏数据处理、数据标准化、主成分分析、属性选择、数据规约
  5. 挖掘建模:所属问题分析(分类、聚类、关联规则、时序模式、智能推荐),选用算法
  6. 模型评价:应用模型对应的评价方法,根据业务对模型进行解释和应用

数据挖掘建模工具

  1. SAS Enterprise Miner
  2. IBM SPSS Modeler
  3. SQL Server
  4. Python
  5. WEKA
  6. KNIME
  7. RapidMiner/YALE
  8. TipDM

数据探索

一、数据质量分析
数据预处理的前提,检查数据中是否存在脏数据(缺失值、异常值、不一致的值、重复数据、含特殊符号的数据),箱线图可以检测异常值。

file_name = r'../data/catering_sale.xls'
catering_sale = file_name
data = pd.read_excel(catering_sale, index_col=u'日期') #加载数据
plt.figure()
plt.rcParams['font.sans-serif'] = ['SimHei'] #正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False #正常显示±号
# 画箱线图
p = data.boxplot(return_type='dict')
x = p['fliers'][0].get_xdata() #fliers为异常值标签
y = p['fliers'][0].get_ydata()
y.sort() #对y从小到大排序
for i in range(len(x)):#处理临界情况, i=0时temp = y[i] - y[i - 1] if i != 0 else -78 / 3#添加注释, xy指定标注数据,xytext指定标注的位置(所以需要特殊处理)plt.annotate(y[i], xy=(x[i], y[i]), xytext=(x[i] + 0.05 - 0.8 / temp, y[i]))plt.show()

箱型图结果

二、数据特征分析

  1. 分布分析:解释数据的分布特征和分布类型:频率分布直方图、茎叶图、饼图、条形图
  2. 定量数据分布分析:求极差、决定组距和组数(极差/组距)、决定分点(分布区间)、列出频率分布表、绘制频率分布直方图。
  3. 定性数据分布分析:百分比/频数
  4. 对比分析:折线图
  5. 统计量分析:均值、中位数、标准差、四分位间距、变异系数CV=sbxˉ×100CV=\frac{s}{b}\bar{x}×100%CV=bsxˉ×100 Pandas中提供的describe方法可以得到基本统计量
file_name = r'../data/catering_sale.xls'
catering_sale = file_name
data = pd.read_excel(catering_sale, index_col=u'日期')
data = data[(data[u'销量'] > 400) & data[u'销量'] < 5000]
statistics = data.describe()[u'销量']
statistics['range'] = statistics['max'] - statistics['min'] #极差
statistics['var'] = statistics['std'] / statistics['mean'] #方差
statistics['dis'] = statistics['75%'] - statistics['25%'] #四分距
print(statistics)
  1. 周期性分析:时序折线图
  2. 贡献度分析:帕累托法则8/2定律,80%的利润来自20%的投入,应该重点关注80%利润的部分,绘制帕累托图
file_name = '../data/catering_dish_profit.xls'
dish_profit = file_name  #餐饮菜品盈利数据
plt.rcParams['font.sans-serif'] = ['SimHei']  # 正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 正常显示±号
data = pd.read_excel(dish_profit, index_col=u'菜品名')
data = data[u'盈利'].copy()
data.sort_values(ascending=False)
plt.figure()
data.plot(kind='bar')
plt.ylabel(u'盈利(元)')
p = 1.0 * data.cumsum() / data.sum()
p.plot(color='r', secondary_y=True, style='-o', linewidth=2)
plt.annotate(format(p[6], '.4%'),xy=(6, p[6]),xytext=(6 * 0.9, p[6] * 0.9),arrowprops=dict(arrowstyle="->", connectionstyle="arc3,rad=.2"))
plt.ylabel(u'盈利(比例)')
plt.show()

帕累托图
8. 相关性分析:散点图、散点矩阵图、计算相关系数(Pearson、Spearman)
Pearson线性相关系数要求连续变量的取值服从正态分布
Pearson=∑i=1n(xi−xˉ)(yi−yˉ)∑i=1n(xi−xˉ)2∑i=1n(yi−yˉ)2Pearson=\frac{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i-\bar{x})^2\sum_{i=1}^{n}(y_i-\bar{y})^2}}Pearson=i=1n(xixˉ)2i=1n(yiyˉ)2i=1n(xixˉ)(yiyˉ)
不符合正态分布的变量,分类或等级变量之间的关联性采用Spearman秩相关系数,也称为等级相关系数,对两个变量成对的取值按照升序或降序编秩,RiR_iRi表示xix_ixi的秩次,QiQ_iQi表示yiy_iyi的秩次,Ri−QiR_i-Q_iRiQi表示秩次之差。(秩次:排序时的位置)
Spearman=1−6∑i=1n(Ri−Qi)2n(n2−1)Spearman=1-\frac{6\sum_{i=1}^{n}(R_i-Q_i)^2}{n(n^2-1)}Spearman=1n(n21)6i=1n(RiQi)2
判定系数是相关系数的平方,用r2∈[0,1]r^2∈[0,1]r2[0,1]表示,其值越接近于1则相关性越强,越接近于0则几乎无直线相关关系。

file_name = r'../data/catering_sale_all.xls'
catering_sale = file_name
data = pd.read_excel(catering_sale, index_col=u'日期')
print(data.corr())
print(data.corr()[u'百合酱蒸凤爪'])
print(data[u'百合酱蒸凤爪'].corr(data[u'翡翠蒸香茜饺']))
  1. 主要数据探索函数:
方法函数功能
sum()求和
mean()求均值
var()求方差
std()求均值
corr()计算相关系数矩阵
cov()计算协方差矩阵
skew()计算样本值的偏度(三阶矩)
kurt()计算样本值的峰度(四阶矩)
describe()样本基本描述
  1. 扩展统计函数
方法函数功能
cumsum()依次给出前1,2,…,n个数的和
cumprod()依次给出前1,2,…,n个数的积
cummax()依次给出前1,2,…,n个数的最大值
cummin()依次给出前1,2,…,n个数的最小值
rolling_sum()按列计算数据样本的总和
rolling_mean()数据样本的算数平均数
rolling_var()计算数据样本的方差
rolling_std()计算数据样本的标准差
rolling_corr()计算数据样本的相关系数矩阵
rolling_cov()计算数据样本的协方差矩阵
rolling_skew()样本值的偏度
rolling_kurt()样本值的峰度

cum系列是DataFrame对象和Series对象的方法
rolling_是pandas的函数,每k列计算一次,滚动计算

  1. Python统计作图
方法函数功能
plot()折线图
pie()饼状图
hist()折线图
boxplot()箱型图
plot(logy=True)绘制y轴的对数图形
plot(yerr=error)绘制误差条形图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/481140.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Barra 结构化风险模型实现(1)——沪深300指数的风格因子暴露度分析

米筐科技&#xff08;RiceQuant&#xff09;策略研究报告&#xff1a;Barra 结构化风险模型实现(1)——沪深300指数的风格因子暴露度分析 江嘉键1 年前1 概述Barra 结构化风险模型是全球知名的投资组合表现和风险分析工具。最近一段时间&#xff0c;我们米筐科技量化策略研究团…

深度学习资料挑的眼花啦?小夕帮你做选择!

小夕还记得几年前刚入坑的时候&#xff0c;老师给的入门资料就是一堆论文&#xff01;害的小夕差点放弃。。。如今深度学习应用的开发成本越来越低&#xff0c;学习资料越来越多&#xff0c;于是对初学者来说进入了另一个相反的困境——资料过多&#xff0c;让人眼花缭乱&#…

干货 | 深度学习的可解释性研究(一):让模型「说人话」

在这篇文章中&#xff1a;可解释性是什么&#xff1f;我们为什么需要可解释性&#xff1f;有哪些可解释性方法&#xff1f;在建模之前的可解释性方法建立本身具备可解释性的模型在建模之后使用可解释性性方法作出解释关于 BIGSCity参考文献不以人类可以理解的方式给出的解释都叫…

深度解析LSTM神经网络的设计原理

引人入胜的开篇&#xff1a;想要搞清楚LSTM中的每个公式的每个细节为什么是这样子设计吗&#xff1f;想知道simple RNN是如何一步步的走向了LSTM吗&#xff1f;觉得LSTM的工作机制看不透&#xff1f;恭喜你打开了正确的文章&#xff01; 前方核弹级高能预警&#xff01;本文信息…

Step-by-step to LSTM: 解析LSTM神经网络设计原理

Ps&#xff1a;喂喂喂&#xff0c;你萌不要光收藏不点赞呀_(:з」∠)_emmmm... 搞清楚LSTM中的每个公式的每个细节为什么是这样子设计吗&#xff1f;想知道simple RNN是如何一步步的走向了LSTM吗&#xff1f;觉得LSTM的工作机制看不透&#xff1f;恭喜你打开了正确的文章&#…

【论文翻译】用知识图谱的多任务特征学习来增强推荐

Wang H, Zhang F, Zhao M, et al. Multi-task feature learning for knowledge graph enhanced recommendation[C]//The World Wide Web Conference. 2019: 2000-2010. 原文链接&#xff1a;https://arxiv.org/pdf/1901.08907.pdf 代码实现&#xff1a;https://github.com/hwwa…

LeetCode-二叉树算法总结-层次遍历,路径总和等

版权声明&#xff1a;本文为博主原创文章&#xff0c;欢迎转载&#xff0c;但请注明出处&#xff0c;谢谢愿意分享知识的你~~ https://blog.csdn.net/qq_32690999/article/details/80484440 </div><link rel"stylesheet" href"https://csdnimg.…

记录一次闲鱼维权事件

-----2017.11.16 最后一次更新----- 小夕也真的没有想到&#xff0c;在万般绝望之时竟然得到了这么多人的帮助。在本文发出后&#xff0c;多位阿里人员积极联系我了解了情况&#xff0c;很感激一位阿里的专家帮我将此事递交给相关部门&#xff0c;让专业的客服直接受理和重审此…

百度作业帮-产品分析

一、商业模式分析 1.1、问答时期&#xff08;2014年2月-2015年1月&#xff09; 商业模式之作业帮V1.0.png两点值得注意&#xff1a; 作业帮的出现有明显的历史原因&#xff0c;即由百度知道团队出品&#xff0c;因此切入K12教育初期&#xff0c;采取的是之前的问答模式&#xf…

【Python自然语言处理】中文分词技术——统计分词

中文分词方法 本文参考自书籍《Python自然语言处理实战&#xff1a;核心技术与算法》 用做个人的学习笔记和分享 1. 规则分词 规则分词的详细笔记 2. 统计分词 2.1 一般步骤 建立统计语言模型。句子划分为单词&#xff0c;对划分结果进行概率分析&#xff0c;获得概率最大的…

你的模型真的陷入局部最优点了吗?

小夕曾经收到过一个提问&#xff1a;“小夕&#xff0c;我的模型总是在前几次迭代后很快收敛了&#xff0c;陷入到了一个局部最优点&#xff0c;怎么也跳不出来&#xff0c;怎么办&#xff1f;”本文不是单纯对这个问题的回答&#xff0c;不是罗列工程tricks&#xff0c;而是希…

如何与深度学习服务器优雅的交互?(长期更新)

0. 故事序言 如果有人问小夕&#xff1a;"小夕&#xff0c;要是人工智能的就业岗位一夜之间消失了&#xff0c;你会去转行做什么呢&#xff1f;" 答曰&#xff1a;"当然是去做Linux运维啊23333" 小夕有一台自己负责的GPU服务器&#xff0c;她可让小夕操碎了…

风控模型师面试准备--技术篇(逻辑回归、决策树、集成学习)

原文地址&#xff1a;https://zhuanlan.zhihu.com/p/56175215 编辑于2019-02-12&#xff0c;持续更新中&#xff0c;有风控建模工作经验的&#xff0c;或者想转行风控建模的小伙伴可以互相交流下... 一.算法 逻辑回归决策树集成学习&#xff08;随机森林&#xff0c;Adaboost&…

step-by-step: 夕小瑶版神经网络调参指南(上)

距离上一篇文章已经过去好久好久好久啦。闭关几个月后&#xff0c;其实早有继续码文章的打算&#xff0c;先后写了一下核函数与神经网络的一些思考、文本预处理tricks、不均衡文本分类问题、多标签分类问题、tensorflow常用tricks、噪声对比估算与负采样等文章&#xff0c;结果…

谷歌发布端到端AI平台,还有用于视频和表格的AutoML、文档理解API等多款工具

谷歌又有了大动作。在大洋彼岸的谷歌Cloud Next conference大会上&#xff0c;谷歌一口气发布了多款AI新品和工具&#xff0c;主要包括&#xff1a; 端到端的AI平台 用于处理视频和表格数据的AutoML Tables和AutoML Video 文档理解API 联络中心AI 视觉产品搜索 对于开发者…

跨性别,你所不知道的事

今晚原计划在订阅号里推送南溪妹子前几天录制的跨性别科普视频&#xff0c;没想到今天收到南溪的私信&#xff0c;说不做科普了&#xff0c;还是算了吧。急忙去了解了一下原因 (http://www.zhihu.com/pin/963101597957644288) &#xff0c;才知道南溪因这段视频所遭受的无故攻击…

文本分类问题不需要ResNet?小夕解析DPCNN设计原理(上)

历史回顾回顾一下图像和文本的发展史&#xff0c;似乎这就是一场你追我赶的游戏。在上一阶段的斗争中&#xff0c;朴素贝叶斯、最大熵、条件随机场这些理论完备的统计机器学习模型使得文本分类、中文分词、NER等诸多自然语言处理问题取得了差强人意&#xff08;释义&#xff1a…

【Tensorflow】TensorFlow的嵌入layer和多层layer

计算图中的操作 # python 3.6 import tensorflow as tf import numpy as npsess tf.Session()# 将张量和占位符对象组成一个计算图&#xff0c;创建一个简单的分类器# 一、计算图中的操作 # 1. 声明张量和占位符&#xff0c;创建numpy数组&#xff0c;传入计算图操作 x_vals …

文本分类问题不需要ResNet?小夕解析DPCNN设计原理(下)

哎呀呀&#xff0c;说好的不拖稿的又拖了两天T_T&#xff0c;小夕过一阵子分享给你们这两天的开心事哦。后台催稿调参系列的小伙伴们不要急&#xff0c;下一篇就是第二篇调参文啦。好啦&#xff0c;接着上一篇文章&#xff0c;直接搬来DPCNN、ShallowCNN、ResNet的对比图。从图…

注意力机制-深度学习中的注意力机制+注意力机制在自然语言处理中的应用

1 深度学习中的注意力机制 https://mp.weixin.qq.com/s?__bizMzA4Mzc0NjkwNA&mid2650783542&idx1&sn3846652d54d48e315e31b59507e34e9e&chksm87fad601b08d5f17f41b27bb21829ed2c2e511cf2049ba6f5c7244c6e4e1bd7144715faa8f67&mpshare1&scene1&src…