精华内容
下载资源
问答
  • 测试数据准备

    千次阅读 2018-12-06 14:59:00
    毫无疑问,稍复杂一点的系统,测试时都会遇到测试数据准备的问题,有些测试中,测试数据准备还是最困难最耗时的工作。  前面提到测试数据产生的方法:1、GUI界面操作产生;2、调用API接口产生;3、通过操作数据库...

    毫无疑问,稍复杂一点的系统,测试时都会遇到测试数据准备的问题,有些测试中,测试数据准备还是最困难最耗时的工作。

            前面提到测试数据产生的方法:1、GUI界面操作产生;2、调用API接口产生;3、通过操作数据库产生。三者各有特点,对需要把测试数据专门作为一项重要工作来对待的,一般都需要API接口+数据库混合的方式来准备数据。

            小型系统的测试,业务数据一般可以直接获取以前版本的数据,通过SQL数据或某些命令操作,取得当前需要使用的数据。

            对于复杂系统,测试数据准备可能需要封装一系列的API函数,例如一种策略就是先封装出一个完全API调用函数,里面有各种常规默认值,然后再这个基础上针对业务进行封装,面向该操作只需要设定某个特定值的,可以调用该特定封装函数。极个别的,可以直接调原始的完全封装。当然,考虑到一些大公司的情况,可能还需要考虑跨平台测试架构的情况,有些人提出进一步封装,提供RestFul的调用接口来屏蔽开发工具特性。其实,都只有一个目的,尽量把测试数据和产生方法隔离,而只侧重测试的业务属性。

      大量需要业务累积才能形成的测试数据,一般只有一个办法,就是通过大量实际数据脱敏。但如果涉及面向公众业务或国防业务之类,考虑到安全策略限制,就只能用笨办法就通过自动化操作来逐步实施模拟,但是这个方法就是太慢,并且不见得好用。

            对测试数据准备都需要有专人专责的一段时间来做的,就是很大系统很大业务了,这时很有必要对测试数据采取严格的版本管理和配置部署管理。用户需要首先注册数据,注明对应版本。测试运行时,平台会有统一生成的脚手架,对应脚本需要使用的数据必须标明版本。

             而考虑到自动化和灵活性,一般比较通用的方法还是先考虑实际数据脱敏,然后通过SQL脚本为基础,结合API调用,需要灵活配置的部分放到配置文件中,再加上配置管理来保证。这一般只在大型网站、大型系统有这个必要。

             实际测试时,针对测试数据,可能有以下一些策略:1、检索:只允许从现在系统中或已使用的数据中检索,没有的话直接生成数据失败;2、新创建:有些时候需要全新创建数据;3、智能:无所谓,只要有符合要求 ;4、out-of-box:使用缓冲池预先准备的数据。      

    展开全文
  • 机器学习之数据准备

    千次阅读 2018-10-03 00:07:17
    04 | 数据准备 数据准备阶段包含从原始数据到形成最终数据集(将要被喂给模型工具的数据)的所有操作。数据准备任务可能要进行多次,没有规定的固定顺序。任务包括:表,记录和特征选择以及为了模型工具的数据清洗...

    04 | 数据准备

    数据准备阶段包含从原始数据到形成最终数据集(将要被喂给模型工具的数据)的所有操作。数据准备任务可能要进行多次,没有规定的固定顺序。任务包括:表,记录和特征选择以及为了模型工具的数据清洗和转换。

    -数据准备是费时间的

    纽约时报的一篇文章报道,数据科学家在挖掘出有价值的“金块”之前要花费50%到80%的时间在很多诸如收集数据和准备不规则的数据的普通任务上。混乱的数据是数据科学家工作流中典型的比较耗费时间的。

    -真实世界中数据是杂乱的

    数据很少是干净的而且经常有数据质量问题。比如:数据的不唯一性,格式上不统一,非法值,特征依赖,缺失值,错误拼写,等等。。见下图:

    典型的数据质量问题有几个原因:

    1. 不完全性:数据缺少特征或者包含缺失值
    2. 噪声:数据包含错误的记录或者异常值
    3. 不一致性:数据包好冲突的记录或者差异。

    哪种问题影响数据质量?

    1. 非法值:一些数据集包含一些明显的值:例如性别只能是男或女,上面的例子很容易发现错误。
    2. 格式:最常见的问题。可能获得不同格式的值比如名字写成:“姓名,xxx”或者“xxx姓名”
    3. 特征依赖:一个特征的值依赖于另一个特征。例如:如果我们有一些学校数据,学生的数量与这个人是否是教师有关。如果某个人不是教师,他不可能有一些学生。
    4. 唯一性:很可能发现只允许唯一值得数据重复。例如:我们的两个产品不能有两个身份ID。
    5. 缺失值:数据集的一些特征的值可能是空白或者缺失的。
    6. 拼写错误:顾名思义。
    7. 错位值:一个特征的值包含另一个特征。

    -数据准备:避免垃圾进,垃圾出

    -清洗你的数据

    为什么处理缺失值?

    1. 数据集的缺失值可能导致错误或者由于没有记录的观察值。
    2. 如果缺失值出现,确定的算法可能就无效了或者得不到你期望的结果。
    3. 缺失值比其他值更能影响模型。
    4. 尽管有些模型可以处理缺失值,但是对缺失值比较敏感(某一变量的缺失可能得到不好的预测结果)。

    如何处理缺失值?

    处理缺失值的经典方法有:

    1. 删除:删除含有缺失值的记录。
    2. 虚拟替换:利用虚拟值替换缺失值。例如:不知道的类别或者数值0.
    3. 均值替换:如果缺失值是数值型的,利用均值替换。
    4. 频数替换:如果缺失值是类别的,利用出现最多的项替换。
    5. 回归替换:利用回归方法得到回归值替换缺失值。

    关于异常/离群点你需要知道的?

    1. 异常值可能通过扭曲预测模型而带来问题。
    2. 离群点多少有点主观。
    3. 在多维数据中异常值非常常见。
    4. 一些模型相对于其他数据对异常值没那么敏感。
    5. 异常值可能是差的数据集的结果或者他们可以使得极值(或不寻常)变得合理。
    6. 一些异常值是我们训练模型有兴趣的点,但有时候他们只是挡住我们训练的脚步。

    离群点的成因

    如何处理离群点

    具体如何处理离群点应该视情况而定。

    1. 保持离群点:一些数据中可能是真实值得离群点没有必要必须从数据中移除。在一些应用中,离群点会提供一些决定性的信息。比如:在一个信用卡欺诈检测的APP里,他们可以提供陷入消费者习惯购买模式之外。
    2. 移除离群点:有两种方法移除离群点

    A:修改或者截断

    B:替换

    处理离群点的例子:

    1. 截断或者修改

    1. 替换

    截断或修改小于5%的数据点不会对假设结果产生太大的影响。

    大于5%的数据点可能影响输出结果比如:

    1. 削弱分析的力度
    2. 使样本缺少代表性
    3. 可能影响正常数据
    4. 考虑到数据转换,选择一个可替代的结果变量或者数据分析技术。

    -数据归一化

    如何归一化数据?

    数据归一化就是将数值型的值转换到一个特定的区间上。常用的归一化方法包含如下几种:

    1. Min-Max归一化

    线性的将值转换到一个0-1的区间。最小值0,最大值1.公式:

    1. Z-score归一化(标准归一化)

    根据数据的均值和方差归一化:利用数据平均值的差除以数据的方差。特征标准化使得数据具有0均值(即当减去分子中的均值是)和标准方差。公式:

    1. Decimal归一化

    将数据中带有小数点的特征值去掉小数点。

    注:数据集的不同度量尺度可能是有问题的,在一些特定的机器学习算法是要求数据具有相同的比例的。

    -数据离散化

    如何离散化数据?

    数值变量可能有许多不同的值,对于某些算法,这可能导致非常复杂的模型。可以通过“绑定”将连续属性转换为分类属性,以便于使用某些机器学习方法。离散化是将数据放进一些桶的过程,所以这是有限个可能的状态。这些桶本身被视为有序和离散的。你也可以离散化数值列和字符串列。

    Bining(装箱):

    1. 装箱有助于提高模型的效果。他能捕获连续变量的非线性行为。
    2. 他最小化离群值的影响。他从大量的去重数据中移除噪声数据。
    3. 他使得模型更具解释性-分组数据更容易展示和理解。他也能提高模型的速度-当去重数据减少时能更快的建立模型。

    可以通过将连续数值转换为分类属性或者间隔值离散化数据。如下有一些方法:

    -数据降维

    样本数据:

    如果你要分析的数据非常庞大,通常比较好用的减少数据量的方法是将数据减少维度而且使得数据变得更加具有代表性和容易处理。这将促进数据的理解,探索和特征工程。大量的数据会导致算法更长的运行时间和更大的计算和内存需求。在总的数据训练之前你可以拿一些具有代表性的少量数据去训练,这样可能会更快的探索和验证方案。

    如何给数据降维?有很多将数据降维的方法,以使得数据更容易处理。依赖于数据的大小和主要特征,如下有一种降维方法可以应用:

    1. 记录取样:只从数据样本中取出具有代表性的数据。
    2. 特征取样:只选择比较重要的几个特征。
    3. 聚合:将数据分为几组并记录每组数据的条数。例如:可以将过去20年连锁餐厅的每日收入聚合为月收入以减少数据量。

    -文本清洗

    如何清洗文本数据?

    在读取/写入文本时不适当的文本编码处理会导致信息的丢失,不经意的引入不可读的字符(如:null)也可能影响文本解析。一些非结构化的文本如推特,生产评论或者网页访问数据在被分析之前通常需要做一些准备工作。

    例如:

    1. 利用空格替换特殊字符和标点符号
    2. 规范化案例
    3. 移除重复的字符
    4. 移除用户自定义的或者内置的停用词
    5. 词干提取

    案例视频网址:https://azure.microsoft.com/en-us/resources/videos/preprocessing-data-in-azure-ml-studio/

    -特征工程

    特征工程在机器学习中是关键的任务。现在没有对特征工程统一的定义,对于不同的人他意味着不同的事情。在谷歌的定义里:从数据中提取特征的过程叫做特征工程。在微软的文档里特征工程更多的是关于特征的构造。

    特征工程是一门艺术-数据专家和专业领域专家交流越多,特征工程过程会越好。

    1. 特征工程师需要在数据探索步骤里结合专业领域知识和洞察力。
    2. 为了避免不相关的变量找到包含详实的变量是一个平衡的艺术。
    3. 详实的变量可以提升结果;不相关的变量会给模型增加不必要的噪声。

    什么是特征?

    左边三列是输入特征又叫做属性,解释变量,自变量右边一列是对应的结果又叫做因变量,最后一列最下面两个问号是未知值,是要利用模型进行预测的。

    特征就是一个可以独立测量的属性或者根据现象可观察的值。在上面图中的例子,有一系列特征如bedrooms,house size,neighborhood用来当做模型的输入,目标就是房子的售价。图中有一些知道价格的房子(分为训练集和测试集)。一个模型可以被建立用于预测还不知道价格的房子。简而言之就是一旦我们利用带有标签的样本训练我们的模型,我们就可以用它预测没有标签样本的标签。

    -特征工程可以增强你的数据

    -特征工程案例

    案例一:

     

    案例2

    案例3

    案例4

    因为我们的目标是从训练数据里构造更加高效的特征,我们用同一个算法但用四个不同的训练数据集建立了四个模型。这四个训练数据集都是极具同样的输入数据创建的,只不过是为四个数据集增加了不同的特征。

    1. 特征集合A=天气+假期+工作日+周末作为预测日的特征
    2. 特征集合B=每天的前12小时的自行车租赁数量
    3. 特征集合C=在同一个小时的前12天的自行车租赁数量
    4. 特征集合D=在同一天的同一个小时的前12周的自行车租赁数量

    除了特征集合A是在原始数据里都已经存在的特征,其他三个特征集合都是通过特征工程创建的。这些特征集合的每一个都体现不同刚面的问题:

    1. 特征集合B体现最近的租赁需求
    2. 特征集合C体现在一个特征小时内的租赁需求
    3. 特征集合D体现在一个特定小时和特定一周内的某一天的租赁需求

    四中数据集的效果对比:

    我们用了增强决策树回归模型,一个常用的非线性算法建立模型。为了理解四个模型的表现,上表给出了对比的结果。表中可以看出:最好的结果是A+B+C和A+B+C+D但是特征集合D并没有对模型的效果有所提升。

    -特征选择

    通过特征集合的部分特征来降低特征空间。特征选择就是从原始数据的特征集合里选择一个特征子集来降低特征的维度,以用最小的特征子集代表最大数量的变量。这个子集就是要进行模型训练的数据集。通常是先用特征工程生成特征然后在特征选择这一步更好的评估相关的,多于的和高度匹配的特征。

    -为什么要进行特征性选择?

    通常,数据包含很多冗余和不相关的特征,一下有四个进行特征选择技术的原因?

    1. 简化模型:使得研究者或者用户更易于解释
    2. 假话训练时间:提升学习过程
    3. 避免维度灾难
    4. 增加泛化能力:防止过拟合

    维度灾难:

    维数灾难指的是某些学习算法在高维数据中表现不佳。例如:经过一个固定点之后,通过增加特征来增加问题的维度确实会影响我们的分类器的性能。这种情况如下图所示,通常我们称之为“维灾难”。

    当你增加更多特征时,你可能需要指数级的增加数据去填充一些空白。然而,实际上我们的数据量都是固定的,增加你需要的数据并不容易。

    -特征选择方法

    -传统的方法:

    1. 正向选择:刚开始模型没有变量,然后你迭代的添加变量并特使模型的预测精度,直到添加更多的变量不再对模型产生正面的影响。
    2. 反向消除:开始时使用全部变量,通过移除变量测试预测精度来选择特征。
    3. 逐步回归:这是一个通过不断的迭代步骤选择最好的特征删除最差的特征的算法。在每一个阶段的过程,添加一个新变量后,在没有明显增加误差的情况下进行测试检查是否能删除一些变量。当度量(局部)最大化时,或者当可用改进低于某个临界值时,该过程终止。

    -过滤方法

    通过评估每个特征和目标属性之间的相关性,这些方法通过应用一个统计测量给每一个特征附一个分数。特征根据分数进行排名,这个分数可以用来帮助设置一个阈值来选择或者消除一个特定的特征。统计的测量方法包括如下几种:

    1. Pearson相关系数
    2. 互信息
    3. 卡方测试等等

    这些方法在计算时间上特别有效,并且对过拟合具有鲁棒性。然而,过滤方法趋向于选择冗余的特征,因为他们不考虑变量之间的相关性。因此,他们主要用作一个预处理方法。

    -包装方法

    包装方法将选择特征作为一个搜索问题,和组合不同的是准备,评估以及和其他的组合比较。一个预测模型被用来评估一个组合特征并基于模型精度附一个得分。

    包装器方法评估变量的子集,这与过滤方法不同,允许检测变量之间可能的交互。

    当包装器方法为每个子集训练新的模型时,它们在计算上非常密集,但是通常为该特定类型的模型提供最佳性能的特征集。

    -嵌入方法

    嵌入的方法在创建模型的同时,学习哪些特征对模型的准确性做出最好的贡献。最常用的嵌入式特征选择方法是正则化方法。正则化方法也称为惩罚方法,它向预测算法(如回归算法)的优化引入额外的约束,使模型偏向于较低的复杂度(较少的系数)。这些方法的一些最流行的例子是LASSO和RIDGE回归,它们具有内置的惩罚函数以减少过拟合。

    -特征选择方法总结

    1. 过滤方法使用统计方法评估特征子集,然而包装方法使用交叉验证。
    2. 过滤器方法比包装器方法快得多,因为它们不涉及对模型进行训练。另一方面,包装方法在计算上也非常昂贵。
    3. 在很多情况下,筛选方法可能无法找到最佳特性子集,但是包装器方法总是可以提供最佳特性子集
    4. 与使用来自过滤方法的特征子集相比,使用来自包装方法的特征子集使模型更容易过拟合
    5. 嵌入式方法结合过滤器和包装方法的性质。它是由具有自己的内置特征选择方法的算法实现的

    -特征选择VS降维

    -特征工程的定义具有不同的版本

    谷歌的定义比微软包含更多的处理。在谷歌的定义中,特征工程包括数据预处理,数据过采样,特征选择等。让我们看看谷歌如何做特征工程:

    特征工程是指将原始数据转换为特征向量。从原始数据创建特征的过程是特征工程,期望花费大量的时间做特征工程。

     

    展开全文
  • 性能测试数据准备-埋数篇

    千次阅读 2019-01-07 21:03:20
    性能测试准备阶段一般需要提前将数据准备好,用于脚本的参数化以及后面压测。 性能测试数据一般分为存量数据和交易数据。存量数据为历史记录数据,一般较大。交易数据的数据量则需满足压测时的需求,要足够多。 ...

    性能测试准备阶段一般需要提前将数据准备好,用于脚本的参数化以及后面压测。

    性能测试数据一般分为存量数据和交易数据。存量数据为历史记录数据,一般较大。交易数据的数据量则需满足压测时的需求,要足够多。

    数据准备一般有以下方法:

        1.直接导入已有的数据库;(实际情况不会有大量数据的数据库,客户生产环境的数据库一般不允许导出)

        2.用工具直接产生记录,比如压测脚本或者其他造数工具;

        适用于测试点连贯的性能测试,可以用压测脚本产生所需要的数据;

        3.编写数据库存储器埋数;

        可直接将数据埋造于当前节点,不需要前置流转。

        这里讲解下第三种方式埋数。

     

    编写数据库存储器埋数前期准备:

        1.页面测试点准备一条模板数据;

        2.日志级别设置为可打印sql的级别;

        3.先查询当前节点记录,记录后台sql相关表及记录状态,然后操作模板记录到下一节点,记录过程中涉及相关表记录;

        这期间可借助工具将该记录导出sql文件,比如PLSQL等;

        4.通过上一步可得到测试点数据涉及的表及状态;(亦可直接从开发得到相关sql

        5.根据前面得到的sql,将各个sql的字段进行变量参数化,以保证唯一。比如idsql之间关联字段等;

        使用notepad++打开导出的sql文件,汇总导出的sql

        选中字段值,notepad++会高亮显示其他位置关联的值;

        Ctrl+h id等关联字段值进行变量替换。

       

       

        6.Sql变量参数化后,套入存储器模板,进行局部调整即可;

        7.维护变量参数化取值区间表格,防止多个测试点埋数冲突。

        存储器模板:

    ----------------------oracle-------------------------

    create or replace procedure 存储器名(x in number,y in number) is

    j number;

    i number;

    begin

        j:=0;

      i:=1;

      while j<x loop

    ------------------------------------------外循环sql

      while i<=y loop

    ------------------------------------------内循环sql 

      i:=i+1;

      end loop;

      commit;

      i:=1;

      j:=j+1;

      end loop;

    end;

    /

    ------------------DB2----------------------

    --/

    create or replace procedure 存储器名(in x bigint,in y bigint)

    begin

      declare j bigint;

      declare i bigint;

        set j=0;

      set i=1;

      while j<x do 

    ------------------------------------------外循环sqlsql

      while i<=y do

    ------------------------------------------内循环sql 

      set i=i+1;

      end while ;

      commit;

      set i=1;

      set j=j+1;

      end while ;

    end

    /

    Oracle存储器在command窗口 sql> 粘贴回车执行

    exec 存储器名(x,y); (传入参数值回车执行)

    DB2存储器在工具窗口粘贴回车执行

    Call存储器名(x,y); (传入参数值回车执行

    展开全文
  • 数据探索和数据准备的步骤

    千次阅读 2015-07-04 11:21:26
    数据探索和数据准备的步骤前言如我们所知,数据分析工作的70%的时间都用作于数据清洗,数据探索和数据准备当中,这可以说是数据分析的核心所在。数据清洗主要是工具层面上的,这里先不讨论。我们这里讨论数据探索和...

    前言

    如我们所知,数据分析工作的70%的时间都用作于数据清洗,数据探索和数据准备当中,这可以说是数据分析的核心所在。数据清洗主要是工具层面上的,这里先不讨论。我们这里讨论数据探索和数据准备的六大步骤。

    • 变量的识别
    • 单变量的分析
    • 双变量的分析
    • 处理缺失值
    • 处理异常值
    • 特征提取(Feature Engineering)

    变量的识别

    在对数据分析之前,我们需要去识别变量,去了解变量的类型和数据的类型。比如判别变量是分类型变量的还是连续型变量,是二分类还是有序变量。这些知识在任何一本统计学书上第一章都会详细介绍。图片来自于哈佛大学数据分析课程

    单变量的分析

    识别完变量之后,我们算是初步的了解了数据的全貌,知道其大概表示什么。接下来我们应该对每一个变量进行分析,以期更深入的了解数据,并希望从中得到一个假设,以便接下来的检验。对于单变量的分析,我们根据单变量的类型进行特定的分析。
    连续型变量

    • 概括性度量:均数,中位数,众数,最大值,最小值,极差,百分位数,四分位数,方差,标准差,偏度和峰度。
    • 图形:直方图和箱型图
    • 检验:检验其分布:P-P图和K-S单样本检验

    分类型变量:主要是要频数表(频率表)去了解其分布,图形主要是用条形图,也可以用游程检验去检验其是否随机,以判定抽样是否随机。

    双变量的分析

    进行完单变量的分析后,我们对数据有了更深的理解,下面我们该进行双变量的分析。我们进行双变量的分析主要有两个目的,第一,我们想知道我们的目标变量与已知变量之间有什么关系;第二,我们想验证在单变量分析中得出的假设。双变量的分析可以分为三类:
    连续型与连续型:对于两个连续型数据的分析,我们主要是用散点图和相关系数去判定。通过散点图看出两者是否有线性关系,在通过计算相关系数去判定关系的强弱。
    分类型与分类型:而对于两个分类型数据的分析,我们可以用交叉分组表,堆积条形图和卡方检验去验证两者之间的关系。
    分类型与连续型:分类型和连续型数据的分析,我们主要用到t检验和方差分析

    处理缺失值

    在数据分析中,缺失值是一个很让人头疼的问题,有时候缺失值过多,以至于根本无法进行数据分析。我们这里讨论一下如何处理数据中的缺失值。
    缺失值产生的原因无外乎两个:一、数据提取时出错,也就是自己操作出错,这个很好说,重新提取或检查一遍即可;二、数据收集时出错,这个很就不好解决。
    缺失值处理:

    • 删除:1.整行删除:对有缺失值的数据,整行删除。这样虽然简单,但是也削弱了模型的功能;2.只删除缺失值:这样虽然保存了较多的数据,但是使得数据中不同的变量有不同的样本量,不利于比较。
    • 替代:计算其均值/中位数/众数去代替缺失值,这也是最常用的方法。
    • 预测模型:以没有缺失值的数据为训练数据,以有缺失值的数据为测试数据,建立预测模型,预测其缺失值。缺点是,若变量之间没有关系,则预测的值根本不准。
    • KNN代替:用最邻近算法计算出其最邻近的属性,以那个属性的值代替缺失值。优点是,不管是分类型还是数值型的都可以操作,缺点是,太费时间。

    处理异常值

    对于异常值,我们可以说是对它喜忧参半,如果异常值是自然存在的,我们就可以对异常值进行一系列分析,比如用于欺诈检测,入侵检测等。但是大部分异常值的是人为产生的,其产生原因可能是录入错误、测量误差、实验误差、抽样误差等产生。这些异常值通常会混淆我们的视听,影响我们对数据的理解,破坏数据之间的联系,因此我们该学会如何去处理异常值。
    检测异常值

    • 图形:箱图、直方图、散点图
    • 在1.5倍的四分位差之外的数据可定为异常值
    • 在数据的5%-95%之外的数据可定为异常值
    • 在均值的三个标准差之外的数据
    • 用聚类分析的方法检测异常值(马氏距离和Cook’s D距离)

    处理异常值

    • 删除:如果是录入错误,或数据为很小的一部分即可删除。
    • 转换变量和聚类:有时候通过一些简单的变量转换和聚类即可减少异常值对整体数据的影响
    • 替换:用均值/中位数/众数去代替异常值
    • 分开处理:若其为自然的异常值,且数据较多,我们就可以将其另分一组,进行分析

    特征提取(Feature Engineering)

    在建模之前,特征提取是极其重要的步骤,它的好坏直接影响你模型的好坏,所以我们必须去学习如何实现特征提取。
    特征提取就是从已知的数据中提取更多的信息,你不加入任何数据,但是你却让你的数据更加有用。
    特征提取的方法有:变量转换和变量创建。
    变量转换:当我们需要改变数据的度量(标准化)或需要把非相关改为相关或改变变量分布时,我们需要用到变量转换,比如进行对数,平方/立方根,分组等方式。
    变量创建:我们都是基于现有的变量来创建新变量。比如说我们可以以上变量转换的方法形成新的变量,也可以把分类变量进行数值化,以便于分析等。
    总结一下:进行数据探索我们需要6个步骤

    1. 识别变量:分类型?数值型?
    2. 单变量分析:数值描述,图表描述,检验分布
    3. 双变量分析:线性关系?相关?
    4. 处理缺失值:删除?代替?预测?
    5. 处理异常值:如何检测?如何移除?
    6. 特征提取:一般有哪些提取方法?

    以上就是数据探索和数据准备的一些步骤,这些步骤不去实践永远都不会用作用,所以我们应该去多做分析,多去探索,如果你的英语不错,kaggle是一个好的去处。

    展开全文
  • 数据准备(预处理)过程中常常需要进行数据的处理,例如数据清洗包括缺失值和异常值处理,数据变换如规范化数据,数据规约如属性规约(选择部分有代表性的属性)等,在Python有很多进行数据预处理的快速方法,以数据...
  • 接口自动化测试(3)-数据准备

    千次阅读 2018-10-29 15:08:27
    第二篇提到了接口自动化大概意思:从excel自动读参数和预期结果,做接口测试并断言,生成excel测试报告。这篇写一下excel里面怎么写,并且用代码...第一个标签那个初始化数据没什么用,如果有公用的东西也可以写那...
  • 对知识图谱有兴趣的读者可以关注我的知乎专栏,主要介绍知识图谱的相关概念、技术,也包含一些具体实践。...因此,笔者准备开一个实践篇,结合理论篇,让读者能够从无到有构建一个领域知识图谱,并在
  • 自动化测试之测试数据准备

    千次阅读 2016-10-10 21:46:09
    而自动化的测试数据准备又有其特殊性,就是数据的可重复利用。因为脚本的执行跟人工的最大区别就是,它只会重复地机械地执行一个动作。而它最大的好处就是,公正。如果脚本failed了,那肯定是哪里出了问题,但这个...
  • 很多小伙伴爬虫做多了发现没有在开始做合理规划的情况下后期整理或者再次使用、查询的时候非常尴尬,为了避免这种尴尬的局面,很多内容要提前做好准备,也是为了后期的管理框架搭建做准备。 因此这个章节很重要,要...
  • 它是专门为了YOLO系列的网络训练准备数据的,YOLO这一点还是很任性的,它没有使用任何一个已有的深度学习框架来实现他的代码,而是自己写了一个纯C的轻量级框架—darknet,所以它的训练数据准备也不是按照标准开源...
  • ArcGIS水文分析实战教程(3)DEM数据准备

    万次阅读 多人点赞 2017-06-21 23:12:37
    GIS与水文分析(3)DEM数据准备 ArcGIS的水文分析工具需要DEM数据才能执行,因此在使用之前必须要准备好DEM数据并且针对DEM数据进行预处理。本章节内容介绍如何根据已有的数据制作和处理DEM,并实现水文分析前的...
  • SNAP 时间序列InSAR数据准备

    万次阅读 2018-09-26 16:19:41
    其中s1tbx可用于哨兵1A、1B InSAR数据处理,可以进行哨兵数据的导入、精轨校正、配准、干涉、数据条带分割、Deburst(不知道如何翻译准确)、数据剪裁操作,以及时间序列InSAR数据准备工作(时间序列分析StamPS文件...
  • 深度学习数据集的准备

    千次阅读 2018-10-25 11:34:00
    深度学习数据集的准备 下面介绍一个做了很久的项目,其中最简单的一部分是将该乳腺X线数据集进行有病没病的分类训练,说到训练最基本的就是数据集的准备,在这里先讲讲数据集怎么准备。下图是原始数据集的一...
  • 如何准备性能测试数据

    千次阅读 2016-02-19 18:19:01
    在软件性能测试过程中,测试数据准备是一个非常系统化、工作量非常庞大一项工作。如何准备支持不同业务操作、不同测试类型的大量测试数据来满足负载压力测试的需求是性能测试过程中经常面对的一个重要话题。   ...
  • 根据Excel准备Gephi的CSV数据

    千次阅读 2019-11-17 18:12:14
    文章目录准备Gephi的数据前言原始数据准备数据准备边数据导入CSV数据后记参考文档 准备Gephi的数据 前言 需要给Gephi准备点数据(Nodes)和边数据(Edges),才能使用Gephi来作可视化图分析。 本文讲解了如何在...
  • 以下是 《长短期记忆(LSTM)系列_LSTM的数据准备》专题的概况图 本专题包含6篇文章: 长短期记忆(LSTM)系列_LSTM的数据准备(1)——如何重塑Keras中长短期内存网络的输入数据 长短期记忆(LSTM)系列_LSTM...
  • //把emp表中的所有数据插入到emp表中insert into emp select * from emp;//把emp表中的部分字段插入emp表中insert into emp (name,sex) select name,sex from emp;注意:1、通过反复执行以上sql,可以获得大量的...
  • 软件款测试人员在测试这种类型的应用软件时,除了需要设计测试用例外,还需要准备相应的测试数据。可以说准备测试数据也是作为软件测试的一项必须的工作。如果没有正确的测试数据,测试过程有时候就无法很好的执行,...
  • 业务人员自助BI分析不够用,还要自助数据准备

    千次阅读 多人点赞 2016-12-02 15:35:31
    自助式BI工具,可以帮助业务人员充分了解和利用企业数据,通过可视化操作,拖拖拽拽来新建分析,生成可视化的报表,帮助企业决策。但近几年的调查研究发现,拥有强大分析策略和模型的产品,比如Tableau、qlikview、...
  • TS可能看起来像一个简单的数据对象,易于处理,但事实是,对于新手来说,在真正有趣的事情开始之前,仅仅准备数据集就可能是一项艰巨的任务。 因此,在本文中,我们将讨论一些简单的技巧和技巧,以获得准备好分析的...
  • 源码地址: https://github.com/yangwohenmai/LSTM/tree/master/%E9%95%BF%E7%9F%AD%E6%9C%9F%E8%AE%B0%E5%BF%86(LSTM)/LSTM%E7%9A%84%E6%95%B0%E6%8D%AE%E5%87%86%E5%A4%87/%E9%87%8D%E5%A1%91Keras%E4%B8%AD%E9%...
  • 使用pytorch准备自己的数据

    千次阅读 2017-05-29 23:29:04
    但往往我们需要在自己的数据集上完成一些操作,这篇博客就旨在以单标签图像分类为例,浅谈一下如何使用pytorch准备自己的数据,如有错误,敬请斧正。我所做的是一个室外图像的天气分类任务,类别只有sunny和cloudy两...
  • 数据仓库

    万次阅读 2019-04-15 11:57:54
    数据仓库(Data Warehouse)是一个面向主题的、集成的、相对稳定的、且随时间变化的数据集合,用于支持管理决策。 主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作...
  • 为PointNet准备自己的数据

    千次阅读 热门讨论 2019-07-04 16:52:07
    PointNet是一种新型的不依赖于输入顺序的深网体系结构,它能够直接处理无序点云数据,因此在几何处理领域有着广阔的应用前景。 目前,PointNet最流行的实现是基于以HDF 5为标准输入格式的TensorFlow框架。对于如何将...
  • imagenet 数据准备

    万次阅读 2017-05-22 20:33:50
    1.数据集折腾 需要将训练集解压, ILSVRC2012_img_train.tar解压后是1000个tar文件,每个tar文件表示1000个分类中的一个类。需要对这1000个tar文件再次解压。在train目录下执行unzip.sh文件,最后得到1000个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,467,308
精华内容 586,923
关键字:

数据准备