如何计划你的prepare(数据分析)

Posted chentianwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何计划你的prepare(数据分析)相关的知识,希望对你有一定的参考价值。

系列文章:

https://preppindata.blogspot.com/p/how-toprep-index.html

 

如何计划你的prep

 阶段1: 了解你的数据

不了解数据,就没法得到想要的分析结果。对于小型的数据集,可以这么做:

  1. 列,行,交叉表是如何组织结构的
  2. header标题(列名)和fields字段是否是分析时所需要的。
  3. 每个field的数据类型type
  4. 一行数据row代表的意义是什么?比如销售订单表,一行就是一张订单。
  5. 空值,无意义的值。

可以用笔快速画出目录列和value,来方便理解。

 

阶段2 希望得到的结果desired state, 我们想要的用于分析的数据表的结构是什么?

大多数分析工具,都要求把数据放到一个单独的表中,所以分析的数据必须集合在一张表内。

同样画图时理解数据的好办法。

 

阶段3 从键盘到desired State

这个阶段不需要电脑,而是你的大脑

在了解原始数据和明确desired State后,下一步就是对数据的规整。clean, pivot, join and aggregate。

列出你需要做的规整,无需太全面,此时还无需建立工作流,而是思考下吗的问题:

Columns
  • 太多,过滤掉无用字段/列。
  • 太少,可能需要其他的数据集。
  • 是否需要变更列/字段的名字。
  • 需要计算?如果需要形成新的列,那么就需要计算。使用准备工具来处理,或分析工具来计算。

Rows

  • Aggregate the data to be less granular.太多?过滤无用的,聚合不是很颗粒的数据。
  • 太少?列转行,转置pivot。或者增加其他数据集(Unioning, 或join)
  • Clean records? Clumped data? 多余的标点符号? 需要处理这些情况,当然也可能在其他阶段处理。
  • 空白值,它的存在是否必要?过滤掉,或者用其他值替代。
 
Multiple data sources
  • Join together to add more columns
  • Union together to add more rows

其他问题:

  • 数据类型变更
  • 重命名字段。

 

阶段4 建立希望的数据集。

With Tableau Prep, you can quickly change the order of the transitions or add forgotten ones to go from the original data to the Desired Stat。

使用Tableau Prep可以把上面的步骤在电脑上实现。从原始数据到输出结果的顺序也可能变化。

 


 

 

如何shape Data

观察

比如拿到这个表:

技术图片

如何观察?

首先,按照维度和度量来区分列。

技术图片

  • 深蓝色的是维度列名称
  • 浅蓝的是维度列的值。
  • 深绿色的是度量列名称。
  • 浅绿色的是度量值

??度量值一定是数值型数据。维度值可以是字符串,日期时间。

 

如何使用tableau来分析表

tableau会把第一行数据当作列名。其余行会作为列的值。

tableau会把列划分到维度和度量。  Dimensions (aspect to split the data up by) ,  Measures (the data fields to analyse).

度量列的数据类型type一定是数值型的。

 

上图的例子

上图作为原始数据表,显然需要进行规整才能用desktop进行分析。

我们已经知道什么作为维度,什么作为度量。

??ta bleau希望,行多多的,列少少的。

??表的第一行日期有6个,作为列的话,显然不合适。因此要转置:

转置又分为

  • 行->列,
  • 列->行2

本例子:

技术图片

原表Measure列下有2个值,列转行生成: Sales和Profit.

原表的日期列名,组成一个新列Date.

 

以上是关于如何计划你的prepare(数据分析)的主要内容,如果未能解决你的问题,请参考以下文章

MySQL prepare 原理

执行计划--Adhoc和Prepare

PHP:PDO prepare预处理

如何在 PyTorch Lightning 中将数据集从 prepare_data() 获取到 setup()

如何使用 mysqli->prepare 执行更新?

史上最全面“完美商业计划书”攻略和技巧(附PPT模板)