数据分析过程剖析

45 views
Skip to first unread message

Q

unread,
Nov 7, 2012, 10:33:33 PM11/7/12
to ttnn
想通了一块事情,分享一下。

关于数据分析过程,早先谈过不少。究竟人们是如何做分析的呢?我翻开以前的文章,发现谈过分析的四种类型,陈述、诊断、求证和预期,这是从分析目的谈开的。也探过决策分析过程的几层模式,决策模式到分析模式到元信息模式到数据集模式,这是从过程关键点的模式抽象谈开的。也有谈分析思路,比如分析思路=角度+步骤+方法,谈到分析逻辑,谈到假设树等等。当然,也曾躺过诸如专题分析的方法论之类,问题-假设-论证,以及对CRISP-DM,SEMMA的具化等等。

所有这些话题似乎都不能概括数据分析的一般过程。

或者说,它们大多是从整个过程中,某一个角度切入,或是用一种模糊而不全面的表述方法。比如我一直有个疑惑——对于分析思路这类看起来虚的东西(至少比挖掘模型、olap、可视化要虚的多),它究竟在分析过程中是处于什么位置?它确实非常重要,很多时候,由于这方面的缺陷,导致整个分析过程的失败,或者效率低下。

回顾曾经经历过的大大小小的分析,有的正规,有的随性,有的耗时长,有的可能只是几分钟,有的用到艰深的技术,有的是顺手牵羊。

但他们都是分析过程,都可以抽象成两个互相迭代的子过程。

分析表达<>分析建模
Inline image 1

所有的分析过程都是这两个过程的循环。无论是团队作战,还是个人独立分析,都是如此。

划分两个过程看起来很傻,不是显而易见的吗?分析表达不就是业务理解,分析建模不就是准备数据、建模挖掘那一套嘛?跟挖掘方法论没什么区别,只是又套了一层壳子而已。

但是且慢,这里区别于挖掘方法论的,是对数据分析本质的抽象。

数据分析本质,是从信息中找到模式,回答预设的问题。(这里还没有涉及到决策。另外,如果大家对这个本质的描述有异议,请提出,毕竟是最基本的。)

可以看到,信息、找模式是分析建模层面,回答、预设、问题,是表达层面的事情。所以,按照这个本质抽象来界定出两个子过程的。

拿最近门店选址的例子来佐证。

当时我朋友跟我合计哪儿的门店比较好,首先我们要达成一致的认识,有哪些条件——人流量、消费水平、是否同品牌门店、同类品牌的分布情况等等,虽然我们没有用纸写下来,也没有细化到预期的盈利能力(但如果要做一份正规的门店选址分析,就需要这类表达了),可这也是我们在沟通、表达。接着,我们拿起ipad,在地图上试图锁定待选的区域,那已经在做分析工作,很多分析都在脑海里进行,凭着自己对街区的记忆,说这里不行,那儿比较热闹。我们没有建模,但在做交互分析。很快,我们得出一个大致的结论——明天先跑三个地方,大溪地、青阳路、政务区。这个步骤显然又是在进行分析表达。因为我们可以依赖的信息不够,所以需要他去实地考察,去那三个地方询价,看人流量、看门店的类型等等,将这些信息写在纸上,回去再进行对比。昨个告诉我初步看中了一个商场的商铺,看来已经又做了一轮分析,然后表达出这个结论。我并不知道他具体的分析判断过程,可我知道他必定有一个比较纠结的对比过程。

看商业环境里,一个团队如何进行分析工作,更明显。首先是沟通需求,构想思路,然后是准备数据,设计模型,写分析报告。典型的表达-分析-表达的循环吧。

如果说这是偏向理想情况的,我们可以在来看一个更常见的场景——一个市场部业务人员,要给领导做一个经营分析汇报。他只有自己一个人干,会怎么干?先想清楚领导要什么。当然,他可能并不太愿意去想,或者已经经过沟通知道了模糊的意图。也许他会喃喃自语,可不能让领导看到我工作业绩不好。他找来上个月的几张报表,看看哪一块的业务开展不好,然后对那块业务做了地区对比。嗯,就是这个地市,把整个业务量拖下来。这个事情要说。再看看渠道,到数据库取每个渠道的业务量。嗯,放到excel里面,旋转透视一下做个对比,看看趋势。把几个落后渠道拎出来讲讲…就这么着,七七八八,将需要汇报的结论做成图表,放到报告里面。大家看,这完全是一个人在工作,并没有用什么挖掘模型,同样可以划分为表达-分析的循环。

大家回顾自己曾经做过的某项分析。不论是工作里为客户,或者是生活中为了自己和朋友。不外乎这两个子过程的循环。

待续...
image.png

Q

unread,
Nov 11, 2012, 8:40:59 PM11/11/12
to ttnn
那么,划分这两个子过程的意义何在?

既然界定了分析表达-分析建模两个过程,就是希望能够对这两个过程给出更高效的方法和技术。而一个显而易见的事实是——不论是工作还是生活中的分析,对分析建模的重视往往超过对分析表达的重视。在分析建模过程里,有丰富的方法、技术和工具来辅助,而在分析表达层面,太少了。

要给出具体的方法、技术和工具,可以进一步细化这两个过程。

分析表达,可以分为分析前表达和分析后表达。

分析前表达,当然就是在一次分析循环之前的分析需求表达,分析逻辑表达。而分析后表达,主要就是分析结论表达。对于分析需求表达,起到传递分析目标的作用。之前谈到的分析的四种类型,其实是这个范畴的——问题提出者的目的是什么?当然,需求表达不应该仅仅是这方面。但无论如何,分析需求不应当只是一句话表述,甚至是停留在人的大脑里面模糊不清的东西。而分析逻辑表达,是传递如何开展分析的思路。如果是一个人独自做分析,大不了这种逻辑停留在脑子里面(先做趋势对比,再做区域对比…),敏捷分析,快进快出!但要是一个团队作战,上要对问题提出者,下要对分析建模者,需要明确表达分析的逻辑。因此,之前提出的FLP、假设树,都属于这个范畴的方法。在分析结论表达环节,这个过程是起到沟通分析成果、决策行动建议的作用。是将分析的产物:模型、交叉表、报表…甚至是一堆散乱的数据,做出结论判断。以前谈过的解读术、图表表达都可纳入此范畴的方法。

分析建模过程。请注意此处的建模是广义的,并非是指挖掘建模。人们做分析,可以只是头脑里面的电光火石,可以是数据的旋转透视,可以是整合宽表构建预测模型,可以是对数据做一些统计检验。都是具体的分析活动。但从总体上,都可以先划分成信息准备(此处不用数据准备,是处于通用性考虑。比如将门店的地址、月租列在纸上,也是信息准备)和分析操作。

信息准备跟数据管理,诸如数据仓库、元数据之类的要区别开来(假设已经有管理好、高质量的数据),但为了分析的效率,信息应当准备成符合分析操作的格式和结构,所以,以前探过元信息模式和数据集模式,可属此范畴。而基本的数据探索,也可算入信息准备的范畴,而不算分析操作的范畴。(此处的数据探索纯粹从数据的统计意义来看,跟业务无关)

分析操作。我们做分析有很多种方式,可以自己动手简单统计,也可以让专业分析人员用专业的方法,可以利用分析工具进行一些交互。所以,可以区分为建模分析。更面向与分析技术人员的,比如挖掘、统计、专用的如社交分析、位置分析之类的。而还有一类成为交互分析,更面向业务分析人员的,比如OLAP、可视化分析、报表、仪表盘等等,他们基本通过这种固定的工具来满足自己的分析。不过现实中,就是有些人自己从数据库取数,按照设想的分析点,将数据贴在excel里。但其本质仍脱离不了以上两类,要不直接操作数据做分析,要不借助工具做交互分析。

可以看到,分析的循环过程,都可以有方法、技术或工具支撑。

于是,数据分析过程中,可以形成如下图的技术框架(其中某些概念还不是非常明确,比如领域分析,想表达的是诸如网络分析、位置分析之类的技术。逐步完善。)。

Inline image 2

完美的分析,应该是快速循环,多迭代的过程。最快的循环在哪里?在人的大脑里面,分析毕竟还是一项脑力劳动。不论是分析表达,还是分析操作,都在大脑里进行,无需切换使用工具的代价。就像系统所有的操作都在内存运行,没有磁盘I/O操作一样,当然可以很快进行。可是,我们现有的分析技术欠缺,工具也不完善,总还得付出一些IO的代价。所以,现实当中建了个挖掘模型,忽然发现需要重新修正假设,可能就会让建模者很纠结了,即便改了两遍,再改第三遍人可能要疯了。代价太大。再比如分析表达,在脑子里面过一遍当然要比写下来效率高很多,但清晰程度也要低很多。能否有个折中,比如有一个分析表达的框架,在脑子里面过一遍,用语言互相做歧义较小的沟通,就能达成表达的目的。那也能实现快速循环。

image.png

abbo

unread,
Nov 16, 2012, 4:06:59 AM11/16/12
to tt...@googlegroups.com
分析建模是否更倾向于“定量验证”的过程?

我是这么想的:定性与逻辑分析——>定量验证分析

这样的分析一来不容易出现大量建模之后,结果索然无味的现象,也容易实现数据分析的实际意义。

数据分析不是在于有效反映和优化【真实情况】吗?



--
您收到此邮件是因为您订阅了 Google 网上论坛的“ttnn BI 观点”论坛。
要向此网上论坛发帖,请发送电子邮件至 tt...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 ttnn+uns...@googlegroups.com
通过以下网址访问此论坛:http://groups.google.com/group/ttnn?hl=zh-CN。
 
 

image.png

Q

unread,
Nov 18, 2012, 7:38:11 PM11/18/12
to ttnn
这里谈到的分析表达和分析建模,是”目标“和”行动“的关系。定性、逻辑分析也放在分析建模这个过程里面。我也纠结”分析建模“跟”分析操作“这两个词的表述,似乎不够准确。比如此处“分析建模”确实容易理解成“建模”是关键词。其实这里我的愿意是”分析+建模“,分析更偏向于定性的逻辑分析,而建模偏向于定量的。但不管是定性定量,其实这个过程都要包括信息收集,以及依据这些信息”做分析“,无论是通过逻辑推演,还是数学模型。

至于你说的”结果索然无味的现象“,我还不太理解具体所指。但我想分析结果不佳有很多原因,有信息不全、方法不当,不过更大的可能是目标不清。因此,要保障一次分析活动的质量,可以从目标、方法、信息、组织等多方面进行审视。


2012/11/16 abbo <hunt...@gmail.com>



--
ttnn
telno: 13514984944

image.png

lee.shrek

unread,
Nov 22, 2012, 3:55:55 AM11/22/12
to tt...@googlegroups.com

Q

仔细研读了下你对数据分析过程剖析的文章,获益匪浅,同时也给我带来了几点疑惑:

1.    分析表达与分析建模之间是怎样转换的,从分析表达到分析建模两个过程间的桥梁是什么形式的?

2.    分析表达划分为分析前表达与分后表达,分析后表达主要是对分析结论的结论的表达,它与分析建模的时序关系是什么?是先后关系还是其他?

3.    如果把分析表达提炼到一种语言的高度,那么这个语言的要素与分析建模之间是怎么样的关系,如果是映射形式的,那么如何表现出来?

4.    分析后形成的策略或建议如何在这两个过程中体现,它的表现形式是怎样的?

想到这么多,一起探讨下,可能理解有误。

 

 

发件人: tt...@googlegroups.com [mailto:tt...@googlegroups.com] 代表 Q
发送时间: Monday, November 19, 2012 8:38 AM
收件人: ttnn
主题: Re: 数据分析过程剖析

image002.jpg

lee.shrek

unread,
Nov 22, 2012, 4:03:01 AM11/22/12
to tt...@googlegroups.com

在补充一下,Q能否给出分析表达与分析建模的准确定义?

 

发件人: lee.shrek [mailto:lee....@gmail.com]
发送时间: Thursday, November 22, 2012 4:56 PM
收件人: 'tt...@googlegroups.com'
主题: 答复: 数据分析过程剖析

 

Q

仔细研读了下你对数据分析过程剖析的文章,获益匪浅,同时也给我带来了几点疑惑:

1.    分析表达与分析建模之间是怎样转换的,从分析表达到分析建模两个过程间的桥梁是什么形式的?

2.    分析表达划分为分析前表达与分后表达,分析后表达主要是对分析结论的结论的表达,它与分析建模的时序关系是什么?是先后关系还是其他?

3.    如果把分析表达提炼到一种语言的高度,那么这个语言的要素与分析建模之间是怎么样的关系,如果是映射形式的,那么如何表现出来?

4.    分析后形成的策略或建议如何在这两个过程中体现,它的表现形式是怎样的?

想到这么多,一起探讨下,可能理解有误。

 

 

发件人: tt...@googlegroups.com [mailto:tt...@googlegroups.com] 代表 Q
发送时间: Monday, November 19, 2012 8:38 AM
收件人: ttnn
主题: Re: 数据分析过程剖析

 

这里谈到的分析表达和分析建模,是”目标“和”行动“的关系。定性、逻辑分析也放在分析建模这个过程里面。我也纠结”分析建模“跟”分析操作“这两个词的表述,似乎不够准确。比如此处“分析建模”确实容易理解成“建模”是关键词。其实这里我的愿意是”分析+建模“,分析更偏向于定性的逻辑分析,而建模偏向于定量的。但不管是定性定量,其实这个过程都要包括信息收集,以及依据这些信息”做分析“,无论是通过逻辑推演,还是数学模型。

image001.jpg

Q

unread,
Nov 22, 2012, 7:14:30 AM11/22/12
to tt...@googlegroups.com
先试着下定义:
  • 分析表达:对分析活动的目标、逻辑、结论的文字、语言描述,或思维转换过程。达到明确思路,有效沟通的目的。
  • 分析建模:按照预设的分析目标、逻辑进行信息搜集、加工、观察,或开发程序探索信息蕴含之过滤,并加以判断得出结论的过程。

这个定义有点抽象,再回答你的疑问看能不能说得更清楚。

1.    分析表达与分析建模之间是怎样转换的,从分析表达到分析建模两个过程间的桥梁是什么形式的?

Q:分析表达和分析建模可以看成计划和执行的关系,他们之间转换的形式可以是严格或不严格的。通过文字,严格。通过语言,不太严格;通过思维,就几乎一念之间,很随意了(但形式的严格跟意思的明确不是一回事,有人想的非常清楚,就不用写出来),举例子来说。

写出来的:
分析目标:预测2012年12月可能投诉的用户
分析逻辑:基于2012年10月的投诉用户,观察其前三个月的收入、投诉次数、退货次数、登录失败次数...寻求他们之间的关联,以此...
说出来的:你先做一个旋转透视表,有年龄、性别、收入、是否投诉、用户数...我来看看投诉用户的特征是什么...
想想的:如果看看10年的销售趋势,可能在哪一年有一个拐点,就拿那个说事儿...

2.    分析表达划分为分析前表达与分后表达,分析后表达主要是对分析结论的结论的表达,它与分析建模的时序关系是什么?是先后关系还是其他?

Q:整个分析活动应该就是“前表达-分析建模-后表达-前表达-分析建模-后表达....分析后表达”的过程。只是因为他们都是表达范畴的事情,所以归入到分析表达当中。

3.    如果把分析表达提炼到一种语言的高度,那么这个语言的要素与分析建模之间是怎么样的关系,如果是映射形式的,那么如何表现出来?

Q:语言的作用是统一标准,就像SQL之于数据库操作。如果设想有这样一种分析语言的存在,那么其组成部分应当是严格定义的,比如表达需求,“求因(果:X;因(A、B、C))”,这里的每个词,至少是除了字母的词都应该是严格定义的,比如“求因”是什么意思(在另一篇BQ七种武器中正在探讨),它应该有几个参数作为输入,哪几个是必须的,哪几个是可选的。这样表达清楚了,接下来分析建模可以细化这个表达式,比如考虑更多的因,可以选用合适的分析模型来论证因果。如果我们再理想化一点的话,这个分析过程是自动的,那么这个表达式应该翻译成物理的数据操作、挖掘建模语言,而得出的结果。也可以用语言表达式的形式传递给展现工具,比如excel、R,如此自动化分析。

4.    分析后形成的策略或建议如何在这两个过程中体现,它的表现形式是怎样的?

Q:策略和建议其实也是分析的结果,只不过在很多场合还是拍脑袋吧,用一些简单逻辑推导得出。比如对于客户服务,分析结果显示预防、预警是短板,那么就提出在这方面的几点策略。所以在这件事上,分析建模其实就是脑子里面过一下,做个判断,而写出来或说出来的则是分析表达。但如果要严格地论证某种策略的可行性,分析建模就复杂了,可能涉及到模拟预演、预测、what-if分析等方法。所以,同样,形成策略和建议也是分成两个过程。

Reply all
Reply to author
Forward
0 new messages