销售报表里的TY是THIS YEAR,今年数据的意思;LY 指 LAST YEAR,是上年数据的意思。销售报表首先介绍一些基本的概念。报表类别企业报表主要分两类:业务报表和财务报表。两者有交叉也有不同。业务报表主要满足业务管理需求,财务报表则需遵守会计准则,更多地是出于满足财务管理的需求。两种报表对同一名词的定义可能有差异。比如销售收入,财务报表中的销售收入是不含增值税的,业务报表中通常是含增值税的。业务报表的目的之一是评估现状,评估现在的销售状况、库存状况、毛利状况如何。如果不好,应该要及时调整销售策略。另一个目的是预测未来。所有的商品企划、销售预测、OTB预算都是以历史销售数据为依据的。单靠销售报表是无法做出一份好的销售预测的,历史销售数据是很重要的基础。业务报表分类方法从数据维度来看,业务报表对买手来说有几个关键指标:销售额/销售量、毛利(GP)、COG和库存控制。每个公司的报表格式可能不一样,但总会包含这几个数据。从企业部门维度来看,业务报表可以按不同的品牌划分、不同业务(比如男装或者女装)划分。此外还有按产品维度和供应商类别划分的报表。前者我们通常称为明细报表。如果你是多品牌经销商的买手,那么报表也会按照各个品牌商划分。当然,业务报表也可以用作员工业绩考核的依据,比较不同买手的业务情况。也有按销售区域分类的报表,因为中国很大,要分成很多区域,比如北区、中区、南区等等。以上都是很常见的销售报表的分类方法。商品结构层级下面重点说说商品结构的层级。其实大部分公司都在做商品结构分层,但差异在于做到什么级别,做得是否细致。大家先看看这两张PPT(此处略)。大部分公司做到的是这两张PPT上的级别,服装下面会有男装、女装、童装、内衣之分。如果是多品牌,下面可能还分休闲装、运动装、职业装,再分品牌1、品牌2,紧接着是collection,然后再细分夹克、衬衫、大衣、裙子等等。大家再看看我发的这三张PPT(此处略),上面的产品分类更细致。比如大衣有长度之分。因为大衣的长度是影响产品销售的重要属性,比如是到脚踝长度、小腿肚长度、膝盖长度还是大腿长度、臀围线长度等等。不同季节、不同区域都需要不同长度的大衣。其实在做商品企划时就应做到这么细致,但是大部分的商品企划没有这么细,只会写大衣要哪些款式。同样,如果数据库也能细致到这个级别,数据分析就会更加详尽。再比如T恤。影响T恤销售的产品属性除了面料和色彩,还有袖长、领形、衣长等等。裤子也一样,裤子的长度、裤形(直筒、大喇叭、小喇叭、阔腿裤、铅笔裤)也会影响销售。这些数据不仅在商品企划中很重要,在做数据分析的时候也很重要。前提是数据库里有这些产品信息,如果数据库里没有这些产品信息,当然也无从分析。因此,一份销售报表的细致程度就会体现在这些方面。
NumPy数组(1、数组初探)更新目前我的工作是将NumPy引入到Pyston中(一款Dropbox实现的Python编译器/解释器)。在工作过程中,我深入接触了NumPy源码,了解其实现并提交了PR修复NumPy的bug。在与NumPy源码以及NumPy开发者打交道的过程中,我发现当今中文NumPy教程大部分都是翻译或参考英文文档,因此导致了许多疏漏。比如NumPy数组中的broadcast功能,几乎所有中文文档都翻译为“广播”。而NumPy的开发者之一,回复到“broadcast is a compound -- native English speakers can see that it's " broad" + "cast" = "cast (scatter, distribute) broadly, I guess "cast (scatter, distribute) broadly" probably is closer to the meaning(NumPy中的含义)"。有鉴于此,我打算启动一个项目,以我对NumPy使用以及源码层面的了解编写一个系列的教程。地址随后会更新。CSDN的排版(列表)怎么显示不正常了。。。NumPy数组NumPy数组是一个多维数组对象,称为ndarray。其由两部分组成:实际的数据描述这些数据的元数据大部分操作仅针对于元数据,而不改变底层实际的数据。关于NumPy数组有几点必需了解的:NumPy数组的下标从0开始。同一个NumPy数组中所有元素的类型必须是相同的。NumPy数组属性在详细介绍NumPy数组之前。先详细介绍下NumPy数组的基本属性。NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量。比如说,二维数组相当于是两个一维数组,其中第一个一维数组中每个元素又是一个一维数组。所以一维数组就是NumPy中的轴(axes),第一个轴相当于是底层数组,第二个轴是底层数组里的数组。而轴的数量——秩,就是数组的维数。NumPy的数组中比较重要ndarray对象属性有:ndarray.ndim:数组的维数(即数组轴的个数),等于秩。最常见的为二维数组(矩阵)。ndarray.shape:数组的维度。为一个表示数组在每个维度上大小的整数元组。例如二维数组中,表示数组的“行数”和“列数”。ndarray.shape返回一个元组,这个元组的长度就是维度的数目,即ndim属性。ndarray.size:数组元素的总个数,等于shape属性中元组元素的乘积。ndarray.dtype:表示数组中元素类型的对象,可使用标准的Python类型创建或指定dtype。另外也可使用前一篇文章中介绍的NumPy提供的数据类型。ndarray.itemsize:数组中每个元素的字节大小。例如,一个元素类型为float64的数组itemsiz属性值为8(float64占用64个bits,每个字节长度为8,所以64/8,占用8个字节),又如,一个元素类型为complex32的数组item属性为4(32/8)。ndarray.data:包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。创建数组先来介绍创建数组。创建数组的方法有很多。如可以使用array函数从常规的Python列表和元组创造数组。所创建的数组类型由原序列中的元素类型推导而来。