nba游戏里面的TO这项数据是什么意思?
结合图片来说 POS是球员的场上位置,MIN是上场的时间,FGM-A是投篮数及命中数,3PM-A是三分出手次数及命中次数,FTM-A是罚球次数及命中次数,+/-是某一位球员在场上时,比分的顺差和逆差 ,OFF是进攻篮板,DEF是防守篮板,TOT是总篮板,AST是助攻数,PF是犯规次数,ST是抢断次数,TO是失误次数,BS是盖帽次数,BA是被盖帽次数,PTS是得分 PS:NBA官网昨天引入了新的技术统计:+/-和BA。 +/-称作联想指数,它是衡量团队合作效率的数值。它表明了某球员在场上和不在场上时球队的执行效果,主要为教练评测不同组合的效率提供依据。
它的具体含义是: +为某球员在场时球队的总得分,-为某球员在场时球队的总失分,+/-即是球员在场时的球队得失分差。 什么是BA呢?
篮球专家Kubatko告诉大家BA是“blocks against”的缩写,意思就是被盖帽次数。在昨天比赛中第一个上榜的开拓者后卫Jarrett Jack(被盖3次)并不认可这项统计,他认为这简直是一种羞辱。 参考文献:
如何使用PHP生成随机字符串?
引言
我们经常可能会用到邀请码,邮件验证码,或者需要使用unique 字符串标记用户属性的情况。
今天我们且不说高深的“全局唯一ID”的生成方案,我们说一个简单的,如何生成一个唯一的,随机的,数组字母组成的字符串。
学习时间
PHP 有一个内置函数 uniqid,用于生成一个唯一的ID。该函数结构形式:
string uniqid([ string $prefix = ""[, bool $more_entropy = false]] )
用于获取一个带前缀、基于当前时间微秒数的唯一ID。
但是该方法所生成的ID并不是安全的,且依赖于本机的时间戳,有可能在同一微秒生成同一ID。所以安全起见,需要添加上 prefix 参数,以示区别。
more_entropy 参数使生成的ID更具有唯一性,如果设置为 TRUE,uniqid() 会在返回的字符串结尾增加额外的煽(使用combined linear congruential generator)。
这就够了吗?这当然不是最优的解决方法。我们尝试其他解决方案。使用 openssl 带来的加密性和唯一性。
bin2hex(openssl_random_pseudo_bytes($bytes))
使用 openssl_random_pseudo_bytes 函数生成一个伪随机字符串的字节,然后使用 bin2hex 将其格式化为十六进制的字符串。
生成的伪随机字节,其字节数由length参数确定。还指示是否使用了加密功能强的算法来生成伪随机字节,并通过可选的crypto_strongparameter来执行此操作。 此种方法返回的参数,很少情况下会出现false。
美中不足的是,这样生成的数字字符串,只在[0-9][a-z]之间,不够广泛。我们尝试加固这个生成方法,增强其鲁棒性。
上述函数会生成一个区间位于 [$min, $max] 的随机数字。然后调用该函数生成指定长度的字符串。
函数 crypto_rand_secure 函数的实现方法,在PHP标准函数中,可以使用 rand / mt_rand 函数替代。
在PHP 7 中,系统提供了更好的函数,可以替代 crypto_rand_secure 使用,就是 random_bytes 和 random_int。使用内置函数,我们将 getToken 函数改造如下:
当然少不了的测试结果,我们批量生成一些 32 位长度的字符串。
写在最后
本文深入探讨了生成随机数字,进而生成指定长度的字符串,实现函数并进行了测试。大家可以在机器环境进行测试。
Happy coding :_)
我是 @程序员小助手 ,持续分享编程知识,欢迎关注。
如何学习数据分析?
优秀的数据分析师并不能速成,但是零经验也有零经验的捷径。
市面上有《七周七数据库》,《七周七编程语言》。今天我们就《七周七学习成为数据分析师》,没错,七周。
第一周:Excel学习掌握
如果Excel玩的顺溜,可以略过这一周。但很多人并不会vlookup,所以有必要讲下。
了解sum,count,sumif,countif,find,if,left/right,时间转换等。excel的各类函数很多,完全不需要学全。重要的是学会搜索。我学函数是即用即查,将遇到的问题在网上搜索得到所需函数。
重中之重是学会vlookup和数据透视表。这两个对后续的数据转换有帮助。
学会vlookup,SQL中的join,Python中的merge能很快掌握。
学会数据透视表,SQL中的group,Python中的groupby也是同理。
这两个搞定,基本10万条以内的数据统计没啥难度,也就速度慢了点。80%的办公室白领都能秒杀。
网上多找些习题做,Excel是熟能生巧。
养成一个好习惯,不要合并单元格,不要过于花哨。表格按照原始数据、加工数据,图表的类型管理。
附加学习:
1、了解中文编码utf-8,ascii的含义和区别
2、了解单元格格式,帮助你了解后期的timestamp,date,string,int,bigint,char,factor等各类格式。
3、如果时间还有剩余,可以看《大数据时代》,培养职业兴趣。
第二周:数据可视化
数据分析界有一句经典名言,字不如表,表不如图。别说平常人,数据分析师自己看数据也头大。这时就得靠数据可视化的神奇魔力了。
以上就是所谓的可视化。排除掉数据挖掘这类高级分析,不少数据分析师的平常工作之一就是监控数据观察数据。
另外数据分析师是需要兜售自己的观点和结论的。兜售的最好方式就是做出观点清晰数据详实的PPT给老板看。如果没人认同分析结果,那么分析也不会被改进和优化,分析师的价值在哪里?工资也就涨不了对吧。
抽空花一段时间学习可视化的基础,如《数据之美》
另外你还需要了解BI的概念。知名的BI产品有Tableau,Power BI,还有国产的FineBI等。都有体验版和免费版能下载,网上找一点数据就能体验可视化的魅力。比Excel的图表高级多了。
BI需要了解仪表盘Dashboard的概念,知道维度的联动和钻取,知道绝大多数图表适用的场景和怎么绘制。比如以下FineBI制作的dashboard。
第三周:分析思维的训练
这周我们轻松一下,学学理论知识。
分析思维首推大名鼎鼎的《金字塔原理》,帮助数据分析师结构化思维。如果金字塔原理让你醍醐灌顶,那么就可以学思维导图,下载一个XMind中文网站,或者在线用百度脑图。
再了解SMART、5W2H、SWOT、4P理论、六顶思考帽等框架。这些框架都是大巧不工的经典。你要快速成为数据分析师,思考方式也得跟着改变。网上搜咨询公司的面试题,搜Case Book。
题目用新学的思维导图做,先套那些经典框架,做一遍,然后去看答案对比。因为要锻炼数据分析能力。所以得结合数据导向的思维。
这里送三条金句:
一个业务没有指标,则不能增长和分析
好的指标应该是比率或比例
好的分析应该对比或关联。
举一个例子:我告诉你一家超市今天有1000人的客流量,你会怎么分析?
这1000人的数量,和附件其他超市比是多是少?(对比)
这1000人的数量比昨天多还是少?(对比)
1000人有多少产生了实际购买?(转化比例)
路过超市,超市外的人流是多少?(转化比例)
这是一个快速搭建分析框架的方法。如果只看1000人,是看不出分析不出任何结果。
第四周:数据库学习
Excel对十万条以内的数据处理起来一点不虚,但是资深的数据分析师还是笑摸狗头,Too Young Too Sample,爷搞得都是百万数据。要百万数据,就得上数据库。
SQL是数据分析师的核心技能之一。有些公司并不给数据库权限,需要分析师写邮件提需求,这非常不好。数据分析师经常有各类假设需要验证,很多时候写十几行SQL就能得到的答案,还得麻烦其他部门导出数据。
SQL学习不需要买书,W3C学习就行了,SQL 教程。大多数互联网公司都是MySQL,我也建议学,性价比最高。
作为数据分析师,只要懂Select相关,增删改、约束、索引、数据库范式全部略过。你的公司心得多大才会给你写权限。
了解where,group by,order by,having,like,count,sum,min,max,distinct,if,join,left join,limit,and和or的逻辑,时间转换函数等即可。
你看,和Excel的函数都差不多。如果时间充裕,则学习row_number,substr,convert,contact等。和Excel一样,学会搜索解决问题。不同引擎的函数也会有差异,例如Presto和phpMyAdmin。
期间你不需要考虑优化和写法丑陋,查询几秒和几分钟对数据分析师没区别,跑数据时喝杯咖啡呗,以后你跑个SVM都能去吃饭了。
网上搜索SQL相关的练习题,刷一遍就行。也能自己下载数据库管理工具,找些数据练习。我用的是Sequel Pro。
第五周:统计知识学习
统计学是数据分析的基础之一。
统计知识会要求我们以另一个角度看待数据。当你知道AB两组的差异用平均值看是多傻的事情,你的分析技巧也会显著提高。
这一周努力掌握描述性统计,包括均值、中位数、标准差、方差、概率、假设检验、显著性、总体和抽样等概念。详细的数学推导不用细看,谁让我们是速成呢,只要看到数据,知道不能怎么样,而是应该这样分析即可。
Excel中有一个分析工具库,简单强大。对列1的各名词做到了解。如果是多变量多样本,学会各种检验。
《统计数字会撒谎》休闲读物,有趣的案例可以让我们避免很多数据陷阱。
深入浅出统计学 (豆瓣)还是经典的HeadFirst系列,适应它一贯的啰嗦吧。
多说一句,老板和非分析师不会有兴趣知道背后的统计学原理,通常要的是分析后的是与否,二元答案。不要告诉他们P值什么的,告诉他们活动有效果,或者没效果。
第六周:业务学习(用户行为、产品、运营)
这一周需要了解业务。对于数据分析师来说,业务的了解比数据方法论更重要。当然很遗憾,业务学习没有捷径。
我举一个数据沙龙上的例子,一家O2O配送公司发现在重庆地区,外卖员的送货效率低于其他城市,导致用户的好评率降低。总部的数据分析师建立了各个指标去分析原因,都没有找出来问题。后来在访谈中发觉,因为重庆是山城,路面高低落差比较夸张,很多外卖人员的小电瓶上不了坡…所以导致送货效率慢。
这个案例中,我们只知道送货员的送货水平距离,数据上根本不可能知道垂直距离这个指标。这就是数据的局限,也是只会看数据的分析师和接地气分析师的最大差异。
对于业务市场的了解是数据分析师工作经验上最大优势之一。既然是零经验面试,公司肯定也知道刚入门分析师不会有太多业务经验,不会以这个卡人。所以简单花一周了解行业的各指标。
《增长黑客》
数据驱动业务的典型,里面包含产品运营最经典的AAARR框架,部分非数据的营销案例,
《网站分析实战》
如果应聘的公司涉及Web产品,可以了解流量的概念。书中案例以Google Analytics为主。其实现在是APP+Web的复合框架,比如朋友圈的传播活动肯定需要用到网页的指标去分析。
《精益数据分析》
互联网数据分析的入门书籍,归纳总结了几个常用的分析框架。比较遗憾的是案例都是欧美。
还有一个小建议,现在有不少第三方的数据应用,囊括了不少产品领域的数据分析和统计。自学党们即使没有生产环境的数据,也可以看一下应用Demo,有好处的。
除了业务知识,业务层面沟通也需要掌握。另外建议在面试前几天收集该行业的业务强化一下。
第七周:Python/R学习
终于到第七周,也是最痛苦的一周。这时应该学习编程技巧。是否具备编程能力,是初级数据分析和高级数据分析的风水岭。数据挖掘,爬虫,可视化报表都需要用到编程能力。掌握一门优秀的编程语言,可以让数据分析师事半功倍,升职加薪,迎娶白富美。
这里有两条支线,学习R语言或Python。速成只要学习一条,以后再补上另外一门。
R的优点是统计学家编写的,缺点也是统计学家编写。如果是各类统计函数的调用,绘图,分析的前验性论证,R无疑有优势。但是大数据量的处理力有不逮,学习曲线比较陡峭。Python则是万能的胶水语言,适用性强,可以将各类分析的过程脚本化。Pandas,sklearn等各包也已经追平R。
如果学习R,建议看《R语言实战》,照着书本打一遍代码,一星期绰绰有余。另外还有一本《统计学》,偏知识理论,可以复习前面的统计学知识。
R学习和熟悉各种包。知道描述性统计的函数。掌握DataFrame。如果时间有余。可以再去学习ggplot2。
Python拥有很多分支,我们专注数据分析这块,入门可以学习《深入浅出Python》。
需要学会条件判断,字典,切片,循环,迭代,自定义函数等。知道数据领域最经典的包Pandas+Numpy。
在速成后的很长一段时间,我们都要做调包侠。
这两门语言最好安装IDE,R语言我建议用RStudio,Python我建议用 Anaconda。都是数据分析的利器。
Mac自带Python2.7,但现在Python 3已经比几年前成熟,而且没有编码问题。各类教程也足够多,不要抱成守旧了。Win的电脑,安装Python会有环境变量的问题,是个大坑(R的中文编码也是天坑)。
到这里,刚刚好是七周。如果还需要第八周+,则是把上面的巩固和融会贯通,毕竟速成是以转岗或拿offer为目的。有机会,我会专门写文章讲解每一周的具体知识,并且用爬虫爬一些数据做练习和案例。