我的第一个python程序——Tushare期货数据

最近在跟随老师学习期货分析,自告奋勇去整理相关的数据,查找到一个不错的数据库——tushare,然后注册,“买积分”,开始正式的分析之旅。 Tushare:如果需要了解官方说明,可以点击下面的连接。 期货日线行情 有了Tableau的分析功底,我的第一个python小程序相对而言比较顺利。从tushare中获得期货的每天交易记录。其中的几个关键地方是: 获得期货的合约列表(pro.fut_basic),然后把它转为一个字典保存; 创建一个列表,依次枚举,只检索满足条件的部分; 使用df = pro.fut_daily 返回日线交易; 根据检索的数量,设置一个睡眠时间,超过100个自动休息1分钟,因为tushare的这个端口每分钟不能超过120次请求; 从网上找了一个方法,alchemyEngine 写入本地数据库。 之后数据导入Tableau进行分析,保密起见,图像不能分享啦。 import tushare as ts from random import randint import time from sqlalchemy import create_engine import datetime pro = ts.pro_api(‘*************************’) bs = pro.fut_basic(exchange=’SHFE’, fields=’ts_code,symbol,exchange,name,fut_code,’ # ‘trade_unit,per_unit,per_unit,quote_unit, quote_unit_desc,’ # ‘d_mode_desc,’ ‘d_month ,last_ddate’ ‘list_date,delist_date’ ) # 交易所 SHFE 上期所 DCE 大商所 CFFEX中金所 CZCE郑商所 INE上海国际能源交易所 #RBContinue reading “我的第一个python程序——Tushare期货数据”

【零售】Tableau LOD+TC做客户交叉购买分析(上)2.0更新

【2020年4月更新】【Tableau高级】LOD实例:基于订单的购物篮分析   上文提供了更加精确的购物篮分析方法。 by 喜乐君 //本文已经加入即将出版的《大数据可视化:原理与方法》 今天客户咨询我一个问题,忙完了细细思考,非常值得写一篇小文章梳理其中的逻辑。此类的问题经常被人问及,之前也零散地分享过,终归不够系统,此次尝试说一下相关的业务需求和背后的技术逻辑。 本文阐述一种角度——一次Fixed LOD,加一次TC表计算(合计百分比)。 PS. 复习了一下高中数据并集和交集 😄 Tableau中左右连接Join,两种基本形式是inner Join和outer Join,前者是内连接(并集),后者是外连接(交集),分别用第二个字母来表示,就是A ∩ B(并集), 和A U B (交集)。 一、来自业务的需求说明 在销售领域分析中,有一个特别重要的领域是购买的交叉分析,比如“同时购买多个品类的客户数量”、“购买品类A同时购买品类B的客户占比”、“仅购买一次的客户中,不同品类的分布情况”等等。这些问题一般不会直接计算金额、商品数量等绝对度量的分析,而更偏重于结构性分析,特别是从顾客数量、品类数量、订单数量等高于商品层次的角度。 也就是,交叉分析往往是考察多个维度直接的结构性关系,而非直接深入单个维度的度量比例。 比如我们要查看客户的忠诚度,一个很重要的角度就是查看“不同购买频次下的顾客数量及占比”这样的分析视角。转化一下视角,从下图来看,就是不同品类的交叉情况。后面我们结合超市数据,分析这个图的可视化过程。 二、客户与品类的交叉分析 我们站在销售经理的角度,尝试去分析不同品类的客户购买情况。我们首先可能会做每个分类的客户数量分析及其相关分析,比如购买金额、购买数量及其%占比等。不过,结构性分析的重点是查看另一个维度的对比或者趋势,比如不同年度的客户数量。 1、无关计算的初级可视化 这个时候,我们可以会想把年度作为颜色加入可视化对比(左下图),不过显然,看上去还不错,但是解释起来破费口舌,这说明我们没有很好地表述可视化焦点。重申一下题目“分析不同分类的客户数量在多年的对比趋势”,趋势应该是关键,所以我们更换品类标题和作为颜色标记的年,就会立刻切换图形,考虑到对比的关键是趋势,面积图自然会比条形图更加直观(右下角)。 在这里,我们可以很明显地发现“技术”的客户数量在2019年增速放缓,被“家具”迎头赶上,这也是折线图非常直观的地方。 2、从直观趋势到内部结构性分析 不过,上面的图形还是停留在初级的分析层面,稍微深一点的分析视角,我们需要从宏观的多年对比回到当下,比如分析2019年的内部结构问题,这样年度就不再是值得关心的焦点,重点是结构。依然从客户和类别的角度出发,我们可以提出更多的结构性问题,比如: 有多少客户仅仅购买了一个品类?多少客户购买了两个品类?多少客户购买了三个品类? 主要分布在哪些品类上? 仅仅购买了A品类、仅仅购买了B品类、仅仅购买了C品类,以及购买了所有这些品类的客户占比是多少? 购买某个品类的客户,同时购买其他哪些品类的概率更高?(连带购买分析) 比如先说第一个问题,哪些品类被反复购买,而哪些则被客户冷落?类似问题的背后,是查看每个客户购买的品类的次数,以及不同次数下的品类的分布。完整的说“(2019年)购买一个品类、两个品类、三个品类的客户数量分别是多少?” 这里的客户数量需要聚合,同时还需要客户层面的一个字段作为维度——每个客户的购买品类数。需要使用一个层次的(辅助计算)字段,又不能使用这个层次的维度字段本身,因此我们就需要使用LOD表达式提前计算这个结果:{fixed 客户名称: countd(类别) } . 这个问题,可以参考15大详细级别表达式的第一个题目。(【Tableau】15大详细级别表达式-会员分析案例(对话版)) 以这个字段作为维度,就可以查看购买了1个类别、2个类别……3个类别的客户数量(下图左上角)。不过这只是刚刚开始,我们还需要每一个条形图中更多的结构性组成,因此,我们把类别作为新的维度加入标记——颜色之中,发现了什么? 你会发现次数的坐标轴远远超过了此前的坐标轴对应的数量,为什么?因为这里购买2个以上的分类中客户出现了大量重复,以至于购买了三个类别的客户数量出现了三次——购买了A的客户数量,比如等于购买了B和C的客户数量,毕竟这些客户都是购买了三个类别。可以参考最开始的那个交叉图。 更专业的角度说,这是因为左边的图的详细级别停留在“客户购买的品类频次”,因此聚合为了三个数;而后者的详细级别进一步下沉,到了“客户购买频次” X “品类”,于是从三个标记,增加到7个标记。 结合上图下面的单品类情况图,我们发现,有23个客户仅购买过一个类别,其中仅购买办公用品的最多,占19人;有126人购买过两个类别,其中技术的连带率最低,仅有52人被连带购买了此分类;有622人购买了全部的三个类别。为了更清晰的看到分布,我们可以使用下面的这个图(借鉴了上面的图,但是比例和数值不对等,注意): 这样的绝对值虽然客观,但是不容易对比,我们还需要转化为百分比。从全部客户的角度看,上面的每个数值需要除以全部的客户数量,在没有筛选的情形下,我们使用总计百分比的结果,和除以{ countd(客户名称)} 的结果是一致的。 因此,增加“快速表计算”——“合计百分比”之后,默认就是上图中间左侧的图形。注意这里的百分比,购买2个类别和3个类别的各占比百分比合计会大于1,为什么,因为客户有重复。 因此,在这里仅购买过办公用品的19人占比2%,技术和家具分别占比不足1%;购买办公用品同时连带购买其他一个类别的客户123人占比16%,同时购买了三个品类的客户占比81%。——这些值都是和全部的客户总数比较。 这个可以使用中间的图形,也可以使用下面的图形来补充增强——在此前的数值基础上,增加更多的角度: 前面的数字代表交叉购买的类别数量,通过绝对值和百分比来突出具体的指标。这里只用了一个一次LOD计算和一次表计算,就可以完整展示不同交叉购买下的分类占比。很明显,这里的三个类别连带购买率占比很高,达到了81%;两个类别的连带购买率中,技术最低仅为7%Continue reading “【零售】Tableau LOD+TC做客户交叉购买分析(上)2.0更新”

【石药】Tableau的一小步,数据文化的一大步

这几天在石家庄为客户提供了三天的入门和中级培训,席间和对方经理聊了不少公司层面的一些信息化项目。我对其中的很多事情印象深刻,也在用这种方式不断的调整自己前进的方向。 一、巨型企业的形势与信息化的特征 毕业时我在国企做了两年时间,如今依然对其印象深刻——很多国企所反映的落后,实在是有违国家和人民对国企的期待。前段时间我和他们联系,很多数据化工作的方式,依然和五六年前毫无二致。 当然,也有一些企业能在时代浪潮面前不至于失去自我。石药集团经历了早年的原料药和常规药,如今能走向专利药和研发药物,可以是是行业中的幸运者。作为香港上市公司,借助全球资本提速科研和销售,遍布全国的办事处也在随着国家正常调整销售政策,不至于像很多国外医药公司医药黯然退场。 不过,中国人和中国企业普遍重视看得见的东西,而忽略看不见的东西,比如崭新的办公和科研大楼是很多公司清一色的标志,但信息化工程往往出人意料的低效不堪。就像很多城市大楼林立,但是地下管网往往脆弱不堪,及至一场大雨死伤无数,才舍得花钱弥补此前的漏洞。 相比西方公司,中国的公司普遍不把信息化建设视为“一种资产”,而是视为“一种费用”,甚至有时候视为不得不付出的“必要的负担”。少有公司会从长期主义的角度去看待信息化和IT的投入,不会想当下的劳动是否能满足未来多年的长期需求;相反,建立一栋大楼,我们往往会提前构想多年之后的应用场景。国外很多产品会通过每年的维护费保持对客户的持续更新,国内的客户往往会自信的停掉维护费,然后眼看着几年后系统崩溃无法使用,也难以再次被调整激活。 这种信息化的惯性思维,让很多企业在事后尝尽苦头。就像一个好的数据库工程师设计的结构,可以保证一家创业公司十年无需更改底层模块,一个不够好(仅仅是不够好)的工程师,让公司不得不带几年后推到重来——此前的客如云供应链系统就是如此,在一个脆弱的基础上,建立不了真正的帝国。 即便知名如石药,知名如浪潮,也会反复的掉入到同一个坑里。昨天的SAP,今天的帆软和用友,也许还有明天的Tableau,都会被这种习惯所耽误,而难以发挥它应有的价值。   二、信息技术和分析技术在企业中的扩展之路——经验与教训 在还没有认识到信息化投入很重要的企业中,视图推广面向未来的“自助分析”,本身就有一种赌注的性质,万事尚未具备,东风多刮无益。 如今的很多企业,以及几乎所有的政府机构,都还停留着过去由IT驱动的传统BI工具的认识上。各级领导和业务部门,认为所有与数据、软件、硬件有关的事情,都理所应当的属于IT部门或者信息部门来负责,稍有远见者成立一个单独的“数据部门”来协调。 这种方式之下,IT和信息部可以推动基础层面的建设,往往难以进入到业务部门的分析领地,每一次尝试基本都会以失败告终。 石药多年前使用用友的云分析平台,后来无疾而终,之后又请帆软的团队来做实施,一年之后事实上承认失败,不仅实施团队几乎撤离,甚至连实施费用恐怕都拿不到——企业从来不会为没有最终价值的东西付费。 事实证明,各类底层的IT项目实施还有较大的胜算,BI项目的实施就几乎命中注定凶多吉少。 不管是传统的BI工具,还是假借敏捷BI之名赚取实施费用和人工费用的“类BI产品”,都无一例外的掉入同样的陷阱:连业务人员都难以明确阐述的业务逻辑,希望外人来梳理清楚并做到切近业务创造价值,这几乎就是不可能完成的难题。 如果过去的IT项目和信息项目80%以上的工作需要IT人员来完成,那么分析项目很可能只需要20%——不是不想更多,而是更多就是毒药,解药只有在懂得业务逻辑和信息逻辑的业务人员手中。   三、Tableau,可能代表了一个方向——我的赌注 我从三年多年开始自学Tableau,一直到如今的路上,误打误撞,弄巧成拙。很多时候,我们在自以为聪明的路上耗费精力,却不如在符合未来趋势的小船上酣睡一宿。 作为曾经的管理人员、业务人员、项目经理,成为为一名Tableau分析师,我有时候只是庆幸于上错了一艘恰好要通往未来的幽静小船。当我明白过来再环视周围,这反而又成了一场豪赌,我要押注在这个我此前从未听闻的趋势上。 Tableau所在的道路,代表了各类公司、单位,未来很可能要走的一条必然之路:由业务人员主导的自助式大数据分析。 你不能指望一个铁匠去做裁缝,面向客户,裁缝必须亲自操剪,而不能假借他人。 面对大数据的时代,你也不能指望IT人员能从数据中挖掘什么洞见给你,业务人员要成为数据的主人。此时我们需要一些适合于业务人员的工具,可以庞大但要灵活,可以高端但又要简单,它需要具有普遍的通用型,又不会因此而失去亮点。 正是Tableau。   四、对于你我而言,Tableau是短期的糖浆,还是长期的蜂蜜? 前几天我跟随金融老师学习,偶然间我把知识分为了“蜂蜜知识”和“墨汁知识”,蜂蜜代表学习缓慢却是真正的好东西,墨汁代表快速普及同时快速消逝的短期良品。 蜂蜜可以保存500年不坏,我唯一担心的是Tableau不能如此长久。 如今,我自己已经尝到了Tableau的甜头,我希望把它酿为长久的蜂蜜。也希望有更多的人能一起学习并接受它的好意。 唯有知识,真正妙不可言。   Nov 9, 2019 ShiJiazhuang