草庐IT

数据分析,如何支持决策

接地气的陈老师 2023-03-28 原文
​“数据分析要支持管理层做出科学的,准确的决策”

——这是很多企业对数据分析师的要求。然而问题来了:到底咋个支持法?!为啥辛辛苦苦码了一大堆数据,还是被说:没啥用?

一、剥去决策的神秘面纱

很多同学一听到“决策”俩字就怂了。对“决策”的第一印象,就是各种听不懂的高大上词语,什么“把握机遇”“苦练内功”“真抓实干”……这些东西咋个和数据扯上关系?

如果只看这些玄幻词语,确实和数据没啥关系!所以想要数据支持决策,第一步,就是剥去决策的神秘面纱,用最简单直白的数据模型来描述决策这件事,这样才能做到可量化,可分析。

举个最直白的例子,一个小伙好不容易盼到周末,终于可以跟女朋友约会了!那么他该怎么办呢?这就是一个典型的决策问题。

二、决策的三大要素

要素一:决策目标。​

提高女朋友满意度。

要素二:决策层级。

最高级决策:要不要出去玩(要/不要)

次一级决策:要去哪里玩?(已决定:要玩,再考虑:近郊/远郊、室内/室外)

次二级决策:要去哪个具体场所玩?(已决定:远郊,室外,再考虑:公园/游乐场/景点……)

次三级决策:要怎么去?在哪里吃饭?怎么回?(已决定去郊区著名景点,决定行程细节)

要素三:评价因素。

比如基于以下因素,决定出去找个地方玩:

1、现在是秋天,天气好

2、女朋友喜欢出去玩

3、附近有个几个景点口碑还不错

4、附近这几个景点还没去过

这些就是支撑:“出去玩”的评价因素。评价因素是用来判断决策是否科学的重要依据。

因为很有可能决策人在谋划阶段思考的因素,在现实中不成立,比如:

1、现在是秋天,天气好——这两天突然很阴沉想下雨

2、女朋友喜欢出去玩——但是这两天没心情

3、附近有个几个景点口碑还不错——但是女朋友听闺蜜说这都不好玩

因此,根据实际情况作出评价,修正决策,就变得非常重要。

三、决策的四大原则

在做决策时候,有几个基本原则:

原则一:清晰决策目标。

如果目标是“我得尽快甩了她”,那后边就想着怎么冷暴力好了。

原则二:决策层级围绕决策目标构建。

如果目标是“讨好女朋友”,那后边就不要想着周末自己憋家打一天游戏,然后扣个可乐拉环当戒指糊弄过去。

原则三:每一级决策受上一级制约。

如果已经选了去远郊,出行方式就只能考虑:租车/打车,最好公交都不考虑。

原则四:每一级决策有自己的评价因素。

决策人根据实际情况,修正评价因素。

了解了这四大原则,我们可以进一步看:数据在决策中的作用。

四、数据如何支持决策

注意:决策是个业务能力,理论上跟数据没啥关系!就像小伙子去约会,如果他高大英俊,气质不凡,腰缠万贯。那即使他啥都不做,都有大把女生扑上门来,满意度还贼高。

BUT!小伙们自己照照镜子,每日三省吾身:高否?富否?帅否?绝大部分小伙既没有倾国倾城的相貌,又没有亿万身家,这时候就得认真思考该怎么和女孩子相处。这时候,又会冒出来更多问题。

问题一:压根不知道干什么。很多钢铁直男除了傻憨憨地问好,就不知道干啥了。有几个餐厅,几个公园,几个游乐场,有啥电影可以看,全不知道。这咋进一步决策嘛。

问题二:知道有可以做的事,但不会评估。知道上海有迪士尼,广州有长隆,就憨憨地拖着女朋友去,天气咋样,有没有心情,一概不考虑,结果无辜被喷。

问题三:评估层级不够细,越往细节问题越多。女朋友想去长隆,于是兴冲冲定了票,至于交通咋走,去了咋吃,准备多少钱,全没安排,结果一路搞得小姑娘又饿又累,花钱不讨好。

当遇到不知道,不明确,算错数的情况,就是数据发挥作用的时候了!

这时候数据可以:

  • 澄清现状
  • 梳理逻辑
  • 计算过程
从而支持决策。

决策的科学性和准确性,也可以一定程度上通过数据保证。

所谓的决策不科学性:原本可以出去玩,结果非宅家惹女朋友不开心。或者本来可以去景点,结果因为不知道,所以没去。通过数据澄清现状,梳理逻辑,可以避免这些问题。

所谓的决策不准确:原本该打车,结果算错了时间和距离,做了公交,把女朋友累得半死大发脾气……

虽然数据不能直接告诉你科学、准确的决策是啥。但是是否当前的决策不科学、不准确,有多大概率是科学、准确的,是可以评估的。

故事到这就讲完了,估计很多小伙仰天长叹:诶呀吗,你看我都没有女朋友。可见决策是个多么难的事呀!实际上,在企业里做决策,比追女朋友容易得多。

五、企业经营决策与数据分析

之所以在企业里做决策比自己追女朋友容易,是因为但凡有点规模的企业,都有组织架构和人员分工,但凡是个正规企业,都有清晰的经营范围。因此只要能了解企业的业务特点,部门分工,就能按图索骥弄清楚决策特点。这可比猜女生的心思容易太多了。

站在数据角度,企业决策的内核并不复杂,其核心,就是:

  • ABC指标,做哪个?
  • 从多少,做到多少?
  • 多长时间内做完?
这三个问题答完即可,剩下的是具体执行问题。不同部门、不同等级的领导,关心的指标肯定不同。

部门间的区别:

  • 战略发展部:全公司经营性指标
  • 销售部:销售金额、销售数量、销售回款……
  • 运营部:总用户数、新增用户数、活跃用户数……
  • 供应链:生产订单数、产品供应数、物料使用数…… 
领导等级也有区别:

  • 公司级高管:战略性问题,如发展路线,考核标准,职责划分
  • 部门级领导:战术性问题,比如具体做哪些产品线,哪些客群,任务分配
  • 小组及领导:战斗性问题,比如是早上干还是晚上干,颜色红色蓝色,按钮左边右边
并且,很多决策是有固定套路的,比如对于单产品,有三种典型策略(如下图)。

对于多产品线/业务线,也有三种典型策略(如下图)。

所以对各种业务的数据形态有积累以后,就能很容易照葫芦画瓢,帮领导理清决策逻辑(如下图)。

六、数据支持决策的难点

实际工作中,数据支持决策之所以难,主要难在:

1、不懂业务,部门、层级、分工、目标完全弄不清

2、没有分清决策层级,不是做的太浅,就是一下扎的太细

3、没有列罗每一级的评估因素,评估不够充分,不能说服人

当然,更糟糕的做法,是试图建立一个神威无敌大将军超牛逼模型,一模解千愁,把各种各样的问题都分析清楚。真要有这么厉害的玩意,强烈建议不要打工了,直接去炒股,一摸一个准,下个世界首富就是你,欧耶!梳理问题逻辑,层层递进,多种方法组合,才是支持决策的正道。

然鹅,总有那种很作的女朋友:

  • 你问她想去哪玩,她说随便
  • 你建议去室内的,她说无聊
  • 你建议去郊外,她说太累
  • 你说咱们讨论讨论,她说你直男!没脑子!
  • 你怎么就不能读懂女孩子心呢​?

有关数据分析,如何支持决策的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  3. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  4. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  5. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  6. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  7. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  8. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  9. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  10. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

随机推荐