分类标签归档:数据处理

3.4 解决样本类别分布不均衡的问题


说明:本文是《Python数据分析与数据化运营》中的“3.4 解决样本类别分布不均衡的问题”。 -----------------------------下面是正文内容--------------------------

所谓的不平衡指的是不同类别的样本量异非常大。样本类别分布不平衡主要出现在分类相关的建模问题上。样本类别分布不均衡从数据规模上可以分为大数据分布不均衡和小数据分布不均衡两种。

  • 大数据分布不均衡。这种情况下整体数据规模大,只是其中的少样本类的占比较少。但是从每个特征的分布来看,小样本也覆盖了大部分或全部的特征。例如拥有1000万条记录的数据集中,其中占比50万条的少数分类样本便

继续阅读

3.3 大数据时代,数据化运营还需要降维吗


说明:本文是《Python数据分析与数据化运营》中的“3.3 大数据时代,数据化运营还需要降维吗”。 -----------------------------下面是正文内容-------------------------- 数据降维就是降低数据的维度数量,数据降维是维数归约的一个重要课题。

3.3.1 什么情况下需要降维

数据降维可以降低模型的计算量并减少模型运行时间、降低噪音变量信息对于模型结果的影响、便于通过可视化方式展示归约后的维度信息并减少数据存储空间。因此,大多数情况下,当我们面临高维数据时,都需要对数据做降维处理。是否进行降维主要考虑以下方面:

  • 维度数量。降维的基本前提是高维

继续阅读

3.2 将分类数据和顺序数据转换为标志变量


说明:本文是《Python数据分析与数据化运营》中的“3.2 将分类数据和顺序数据转换为标志变量”。 -----------------------------下面是正文内容-------------------------- 分类数据和顺序数据是常见的数据类型,这些值主要集中在围绕数据实体的属性和描述的相关字段和变量中。

3.2.1 分类数据和顺序数据是什么

在数据建模过程中,很多算法无法直接处理非数值型的变量。例如KMeans算法是基于距离的相似度计算,而字符串则无法直接计算距离。另外,即使算法本身支持,很多算法实现包也无法直接基于字符串做矩阵运算,例如Numpy以及基于Numpy的skl

继续阅读

3.1 数据清洗:缺失值、异常值和重复值的处理-2代码实操


说明:本文是《Python数据分析与数据化运营》中的“3.1 数据清洗:缺失值、异常值和重复值的处理-2 代码实操部分”。 -----------------------------下面是正文内容--------------------------

缺失值处理

对于缺失值的处理上,主要配合使用sklearn.preprocessing中的Imputer类、Pandas和Numpy。

其中由于Pandas对于数据探索、分析和探查的支持较为良好,因此围绕Pandas的缺失值处理较为常用。

import pandas as pd # 导入pandas库
import numpy as np # 导

继续阅读

3.1 数据清洗:缺失值、异常值和重复值的处理-1


说明:本文是《Python数据分析与数据化运营》中的“3.1 数据清洗:缺失值、异常值和重复值的处理”第一部分。 -----------------------------下面是正文内容-------------------------- 在数据清洗过程中,主要处理的是缺失值、异常值和重复值。所谓清洗,是对数据集通过丢弃、填充、替换、去重等操作,实现去除异常、纠正错误、补足缺失的目的。

3.1.1 遇到缺失值就要补全吗

数据缺失分为两种: 1. 一是行记录的缺失,这种情况也定义为数据记录丢失; 2. 二是数据列值的缺失,指由于各种原因导致的数据记录中某些列的值空缺,不同的数据存储和环境中对于缺

继续阅读

2.3 内容延展:读取非结构化网页、文本、图像、视频、语音


说明:本文是《Python数据分析与数据化运营》中的“2.3 内容延展:读取非结构化网页、文本、图像、视频、语音”。 在前面的章节中,我们介绍的内容是企业常见的数据来源和获取方式,本节将拓展数据来源方式和格式的获取,主要集中在非结构化的网页、文本、图像、视频和语音。

2.3.1 从网页中爬取运营数据

要从网页中爬虫数据,可使用Python内置标准库或第三方库,例如urllib、urllib2、httplib、httplib2、requests等。本节使用requests方法获取网页数据。

import requests # 导入库
url = 'http://www.dataivy.c

继续阅读

2.2 使用Python获取运营数据-1


说明:本文是《Python数据分析与数据化运营》中的“2.2 使用Python获取运营数据”中的第一部分,由于本节内容较多,这里分几个文章。

2.2.1 从文本文件读取运营数据

1. 使用read、readline、readlines读取数据

Python可以读取任何格式的文本数据,使用Python读取文本数据的基本步骤是:

  • 定义数据文件
  • 获取文件对象
  • 读取文件内容
  • 关闭文件对象

定义数据文件 定义数据文件即定义要读取的文件,该步骤不是必须的,可以跟“获取文件对象”整合。但为了后续操作的便捷性、全局数据对象的可维护性以及减少代码冗余,建议读者养成习惯,将数据文件预先赋值给一个对象。

定义文

继续阅读

2.1 数据化运营的数据来源类型


说明:本文是《Python数据分析与数据化运营》中的“2.1 数据化运营的数据来源类型”。 数据化运营的数据来源类型包括数据文件、数据库、API、流式数据、外部公开数据和其他来源等。

2.1.1 数据文件

数据文件就是存储数据的文件,广义上,任何文件中存储的信息都可以称为数据;狭义上,数据文件中存储的是以数字或文本形式存储的结构化的数据记录,本节的范围指的是后者。

  • 结构化数据文件大多来源于数据库,例如从MySQL中导出2017-01-04到2017-10-21的订单明细数据并存储为csv文件;
  • 也有来源于系统或工具的工作过程或返回结果,例如Windows版本的Tesseract文字识别后的结

继续阅读

使用sklearn中的决策树tree 库做分类分析


sklearn中没有一个专门的分类算法库,分类算法分散在不同的方法库中,例如ensemble、svm、tree等,在使用时需要分别导入不同的库来使用其中的分类算法。

示例模拟的是针对一批带有标签的数据集做分类模型训练,然后使用该模型对新数据集做分类预测;主要使用sklearn做分类、用matplotlib做图形展示

另外,本节会用到两个新的图形和表格展示库:prettytable和pydotplus,以及配合pydotplus的GraphViz程序。

prettytable是用来做表格格式化输出展示的,它的好处是可以非常容易的对行、列进行控制,并且输出带有分割线的可视化table。

第一次使用

继续阅读

数据预处理-清洗转换


当数据质量校验完成后,针对有问题的数据要进行的是数据清洗和转换,另外还包括对正常数据的转换。数据清洗的主要作用包括:纠正错误、删除重复项、统一规格、修正逻辑、转换构造和数据压缩。

1. 纠正错误

错误数据是数据源环境中经常出现的一类问题。数据错误的形式包括:

  • 数据值错误:数据直接是错误的,例如超过固定域集、超过极值、拼写错误、属性错误、源错误等。
  • 数据类型错误:数据的存储类型不符合实际情况,如日期类型的以数值型存储,时间戳存为字符串等。
  • 数据编码错误:数据存储的编码错误,例如将UTF-8写成UTF-80。
  • 数据格式错误:数据的存储格式问题,如半角全角字符、中英文字符等。
  • 数据异常错误:如数值

继续阅读