首页
学习
活动
专区
圈层
工具
发布

Python实战项目——物流行业数据分析(二)

今天我们对物流行业数据进行简单分析,数据来源:某企业销售的6种商品所对应的送货及用户反馈数据 解决问题: 1、配送服务是否存在问题 2、是否存在尚有潜力的销售区域 3、商品是否存在质量问题 分析过程...: 依旧先进行数据处理 一、数据清洗 ① 重复值、缺失值、格式调整 ② 异常值处理(比如:销售金额存在等于0的,数量和销售金额的标准差都在均值的8倍以上等) 二、数据规整 比如:增加一项辅助列...:月份 三、数据分析并可视化 接下来我们按上面一步步开始。...lambda x:x.month) data 数据分析并可视化 我们回到一开始的问题,现在开始解决 问题1、配送服务是否存在问题 我们分别从月份维度,销售区域维度,货品维度,货品和销售区域结合四个角度来开始探讨...货品:最差的货品2,主要送往华东和马来西亚,主要是马来西亚的送货较晚导致。

65610

黑盒(功能)测试基本方法

a.有效等价类 b.无效等价类 (2)划分出的等价类中按以下三个原则设计测试用例 a.为每一个等价类规定一个唯一的编号。...(3)采用因果图方法能够帮助我们按一定步骤,高效率地选择测试用例,同时还能为我们指出,程序规格说明描述中存在着什么问题。...4、因果图方法小结 (1)因果图方法是一个非常有效的黑盒测试方法,它能够生成没有重复性的且发现错误能力强的测试用例,而且对输入、输出同时进行了分析。...Beizer 指出了适合使用判定表设计测试用例的条件 a.规格说明以判定表形式给出,或很容易转换成判定表。 b.条件的排列顺序不会也不影响执行哪些操作。 c.规则的排列顺序不会也不影响执行哪些操作。...6、Myers测试方法选择的综合策略 - Myers提出了使用各种测试方法的综合策略 (1)在任何情况下都必须使用边界值分析方法。经验表明用这种方法设计出测试用例发现程序错误的能力最强。

1.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    黑盒 测试用例设计方法「建议收藏」

    :1≤月份≤12} D1={日期:1≤日期≤31} Y1={年:1812≤年≤2012} 2)若条件 ① ~ ③中任何一个条件失效,则 NextDate 函数都会产生一个输出,指明相应的变量超出取值范围...内部边界值条件主要有下面几种: 数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。...如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。...Beizer 指出了适合使用判定表设计测试用例的条件: 规格说明以判定表形式给出,或很容易转换成判定表。 条件的排列顺序不会也不影响执行哪些操作。 规则的排列顺序不会也不影响执行哪些操作。...:顺序,选择和重复.但分辨一个状态迁移中的所有循环是有困难的.

    2K21

    Postgresql源码(75)notify与listen执行流程分析

    在数组中表示自己已在监听队列中,且在监听队列的结构会记录自己当前消费到的位置。 一个后端进程占用队列一个位置,多次执行Listen不会占用新的位置,同一个backend+db,只能使用一个位置。...监听如果在psql执行,只在任何语句执行完时收到通知,如没有语句执行不会收到通知。 监听如果使用API,例如libpq的PQnotifies函数,可以立即收到通知进行处理。...Notify: 通知语句的事务必须提交才会生效。 通知是异步的,记录在队列中,每次监听会收到队列中累加的所有消息,PG保证收到的顺序和发送顺序一致。...在数组中表示自己已在监听队列中,且在监听队列的结构会记录自己当前消费到的位置。...在语句结尾的事务状态机流转函数中,如果是事务提交状态,会走入CommitTransaction进行事务提交的具体工作。

    1.4K20

    使用 SQL 进行队列分析

    没有队列分析,你永远不会发现这一点。队列分析的价值:队列分析帮助你回答关键的业务问题,包括产品留存率评估、功能变更影响分析、用户生命周期价值预测以及流失预警和干预。...:1/3=33%查询解析:cohortsCTE:识别每个用户的队列月份user_periodsCTE:计算每次活动的周期数最终查询:按队列月份和周期数分组,统计活跃用户数可视化队列数据留存热力图:使用颜色...如果某个队列的会话频率低,可能需要改进推送通知或应用内提示。跨数据库实现不同数据库的队列分析实现略有不同,主要是日期函数的差异。...通过根据用户加入时间对用户进行分组并跟踪他们的活动,你可以:衡量留存率并识别流失点比较队列以查看产品变更的影响预测流失并在用户离开之前采取行动而且使用SQL,你可以完全控制分析——无需等待第三方工具添加你需要的功能...关键要点:队列分析的核心是将用户按首次互动时间分组,跟踪他们的后续行为三步法:识别队列→计算周期数→构建留存矩阵留存率是最重要的指标,但你也可以计算收入、流失率、LTV等最佳实践:选择合适的队列窗口、明确定义

    9510

    求和家族,不简单

    B2) 公式说明: (1)要对不同的表的相同区域进行求和,可以用sum进行跨表求和 (2)当跨表引用多个相邻的工作表中相同的数据区域进行汇总时,无须逐个工作表对数据区域进行引用,可以按工作表的排列顺序,...使用冒号将第一个工作表和最后一个工作表表名进行连接,作为跨表引用的工作表名。...注意:sum的跨表求和,是对多张工作表上的相同单元格区域进行引用求和。所以在案例演示中,我们也可以看到,销售1-5部的销售表,其表结构是完全一致的。...对于案例演示中的公式,如上,sumifs函数将条件区域B2:B11(月份列)中的每一个单元格都与条件值G2(月份)单元格进行比对;将条件区域C2:C11(产品列)中的每一个单元格都与条件值H2(产品)单元格进行比对...6.数据库求和:dsum函数 作为求和家族中的一员,dsum函数相对于其它成员来说,存在感不强,这里了解下即可。 dsum函数,返回的是数据区域中满足指定条件的列中的数字之和。

    2.7K00

    黑盒测试用例设计方法详解

    月份<=12} D1={日期:1<=日期<=31} Y1={年份:1812<=年<=2012} 2)若条件1~3中任何一个条件失效,则NextDate函数都会产生一个输出,指明相应的变量超出取值范围...内部边界值条件主要有下面几种: 1)数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。...如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。...Ø 条件的排列顺序不会也不影响执行哪些操作。 Ø 规则的排列顺序不会也不影响执行哪些操作。 Ø 每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。...顺序,选择和重复.但分辨一个状态迁移中的所有循环是有困难的.

    2.6K20

    黑盒测试方法介绍_黑盒测试两种基本方法

    :1≤月份≤12} D1={ 日期:1≤日期≤31} Y1={ 年:1812≤年≤2012} 2)若条件 ① ~ ③中任何一个条件失效,则 NextDate 函数都会产生一个输出...内部边界值条件主要有下面几种: a)数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。...如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。...Beizer 指出了适合使用判定表设计测试用例的条件: ①规格说明以判定表形式给出,或很容易转换成判定表。 ②条件的排列顺序不会也不影响执行哪些操作。...③规则的排列顺序不会也不影响执行哪些操作。 ④每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。 ⑤如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。 B.

    1.4K10

    按列排序,一定要把这三个场景搞定,特别实用!| PBI实战

    其实,这些问题都可以通过按列排序的方式来解决,以下,我举三个实际工作中常见的排序场景进行说明。...- 01 - 中文月份排序 如前面的问题所示,默认情况下,中文月份的汉字会根据拼音进行排序,这时,我们可以将[中文月份]的“按列排序”设置为[数字月份],月份排序就好了: 当然,如果日期表里没有这个列的话...,可以通过在Power Query里新建自定义列或在DAX里新建计算列来实现: - 02 - 部门/领导/学历等排序 在企业里面,不同部门是有一定的顺序的,比如发正式文件的时候,就要特别注意一下,领导的顺序就更不用说了...; 部门/领导/学历问题则引入参照表; 矩阵问题更多的是突破矩阵本身功能的限制。...实际上,大多数工作中的问题所需要使用的功能本身都不会很复杂,核心是能做到基础功能的融汇贯通、熟练应用。

    3.5K10

    解决PostgreSQL逻辑复制的挑战

    他解释说,一个例子可能是跨多个区域运行的金融服务应用程序或永远不会停机的关键电子商务应用程序。...尽管 Postgres 中的逻辑复制 是一项强大的功能,但它也存在一些挑战,包括一致性、同步、冲突解决和开销,这些都会影响性能。...使用 LOLOR,此数据存储在非目录表中,以简化跨多个数据库实例或服务器的复制。...复制异常处理和日志记录: 通过更新的错误处理和日志记录机制,复制错误将记录到一个新的异常表中,以防止它们阻止后续更改。这增强了对复制错误的可见性,以便更轻松地进行故障排除,而不会中断整体系统操作。...在分布式多主 Postgres 系统中,序列必须在不同的区域进行更新,如果每个节点独立更新序列,就会产生无法解决的冲突。

    39910

    HAWQ技术解析(十七) —— 最佳实践

    该文件存在于所有HAWQ实例上,并可以通过Ambari或使用HAWQ命令行接口进行修改。使用一致的策略(Ambari或命令行接口)维护hawq-site.xml文件的内容。        ...注意,对于哈希分布表,扩展集群不会立即提升性能,因为哈希分布表使用固定数量的虚拟段。...为减轻NameNode的负载,你可以减少每个节点使用的虚拟段数量。这可以在语句级或资源队列级进行设置。...如果数据按月分区,你可以轻易从数据仓库中删除最老的月份分区,并将当前数据装载到最近的月份分区中。 根据分区定义条件,是否每个分区的数据量基本相同?选择尽可能平均划分数据的条件作分区。...查询优化器是否选择了最好的连接顺序?当查询连接多个表时,确保优化器选择最具选择性的连接顺序。消除最大行数的连接应该在计划中更早处理,使得计划树向上移动的行更少。

    1.6K70

    刨根问底 Redis, 面试过程真好使

    INCR 如果 key 不存在,则初始化值为 0,然后再利用 INCR 进行加 1 操作。...,如果 bitmap 存在则进行底层缓存的数据查询,如果不存在则进行拦截,不再进行缓存的数据查询 缓存空对象:如果数据库查询的为空,则依然把这个数据缓存并设置过期时间,当多次访问的时候可以直接返回结果,...在事务执行的过程中,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令队列中。Redis 不支持回滚事务,在事务失败的时候不会回滚,而是继续执行余下的命令。...,Value则采用长度为4个字节(32位)的位图(最大月份只有31天)。...在跳表中,要查找区间的元素,只要定位到两个区间端点在最低层级的位置,然后按顺序遍历元素就可以了,非常高效。

    81530

    用户增长——Cohort Analysis 留存分析(三)

    而一个漂亮的平均数所创造出来的这种虚幻景象,往往会给我们的决策造成误导。但是事实上,数据并不会说谎,只是分析数据的人没有做到精准分析而导致对数据呈现的错误解读!...相较与比较繁琐的损失分析,RFM或者用户聚类等,Cohort只用简单的一个图表,甚至连四则运算都不用,就直接描述了用户在一段时间周期(甚至是整个LTV2)的留存(或流失)变化情况。...维度:如果按用户的新增日期分组,那时间就是维度,如果按新增用户的渠道来源分组,渠道就是维度。...其他月份也是同样的分析方法,例如,4月份新增的110用户在8月的留存数量为99个。 其次纵向看表。5月份中,当月总下单用户数为477。...四、一个案例总结 数据分析——Cohort Analysis(群组分析) Cohort Analysis又叫队列分析,群组分析,是数据分析中常用的一种方法。

    5.5K32

    2023届数字IC面经 | 学会看面经,梳理知识点

    在秋招过程中感觉相对于往届师兄师姐来说感觉整体较为困难,拿到的offer也不算是很多,困难可能也是因为一些公司、研究所投递的较晚,一般前面招满了后面可能就不会再招了。...从秋招经历来看,自我感觉数电基础还是挺重要的,因为不光笔试题会涉及大量的电路分析和相关逻辑的知识,面试有时候也会让你自己搭建电路,所以我建议大家一定要打好数电基础,可以结合一些笔试真题进行学习。...一面先让我讲了一下项目整体的流程,可能也是因为面试我的是无线相关的部门,就问了我一下某个通信算法你们是怎么进行硬件实现的,还有跨时钟是怎么进行解决的,之后还问了我一些八股,比如数字IC设计的流程是什么,...3 ADI ADI是我8月份投递的,然后9月份进行的一轮面试,一共只有一轮技术面试,一面的时间还是稍微有点长的,问的内容也比较全面。...一面刚开始问了本科硕士学的一些主要课程,之后直接开始问项目中主要负责的模块是怎么进行实现的,询问我有没有跨时钟处理,具体是怎么处理的,然后问FIFO深度怎么进行计算,然后让我画一个序列检测器的状态机,后来又问了我跨时钟同步有哪些方式

    1.6K31

    C++实战——日期类的实现

    数据处理和分析:在数据分析和处理的过程中,日期类可以用于对时间序列数据进行操作和计算,例如计算日期之间的时间间隔、按日期进行排序和过滤数据等。...日志记录和统计:日期类可以用于记录和统计事件的发生时间,例如在日志系统中,可以使用日期类来记录日志的时间戳,并对日志进行统计和分析。...如果当前对象的_day小于d的_day,则返回true,表示当前对象的日期较早。 如果以上条件都不满足,则返回false,表示当前对象的日期与d相等或较晚。...该函数采用了常量引用参数const Date& d,表示传递给该函数的参数d是一个常量引用,即不会对d进行修改。这是为了保证在比较函数中不会对传入的对象进行修改。...该函数采用了常量引用参数const Date& d,表示传递给该函数的参数d是一个常量引用,即不会对d进行修改。这是为了保证在比较函数中不会对传入的对象进行修改。

    48210

    黑盒测试之测试用例的设计方法(全)

    :1≤月份≤12} D1={日期:1≤日期≤31} Y1={年:1812≤年≤2012} 2)若条件 ①~ ③中任何一个条件失效,则NextDate 函数都会产生一个输出,指明相应的变量超出取值范围...内部边界值条件主要有下面几种: a)数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。...⑤程序的输出有4个报告: a)按学号排列的成绩单,列出每个学生的成绩、名次。 b)按学生成绩排序的成绩单。 c)平均分数及标准偏差的报告。 d)试题分析报告。...如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。...Beizer 指出了适合使用判定表设计测试用例的条件: ①规格说明以判定表形式给出,或很容易转换成判定表。 ②条件的排列顺序不会也不影响执行哪些操作。 ③规则的排列顺序不会也不影响执行哪些操作。

    5.2K72

    测试用例的设计方法(全)「建议收藏」

    :1≤月份≤12} D1={日期:1≤日期≤31} Y1={年:1812≤年≤2012} 2)若条件 ①~ ③中任何一个条件失效,则NextDate 函数都会产生一个输出,指明相应的变量超出取值范围...内部边界值条件主要有下面几种: a)数值的边界值检验:计算机是基于二进制进行工作的,因此,软件的任何数值运算都有一定的范围限制。...⑤程序的输出有4个报告: a)按学号排列的成绩单,列出每个学生的成绩、名次。 b)按学生成绩排序的成绩单。 c)平均分数及标准偏差的报告。 d)试题分析报告。...如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。...Beizer 指出了适合使用判定表设计测试用例的条件: ①规格说明以判定表形式给出,或很容易转换成判定表。 ②条件的排列顺序不会也不影响执行哪些操作。 ③规则的排列顺序不会也不影响执行哪些操作。

    2.5K42

    揭秘TDSQL-A:兼容Oracle的同时支持海量数据交互

    FN通过FID,src_node_id, dest_node_id来进行网络数据路由。而FID则标识了查询的RemotSubplan。整个业务逻辑归结起来就是,我是谁,我从哪里来,要到哪里去。...关闭顺序恰好与启动顺序相反,也就是说,关闭的时候先关闭DN、CN,再关闭FN,最后是GTM。 2 FN数据发送与接收过程 2.1 执行计划 我们举一个例子。...像图中左边所示,它可以通过merge partitions将1月份和2月份的分区进行合并,形成一个稍大的分区,这样就可以有效地去减少分区的数量。...在下图这个例子中,比如说2019年12月份的数据,还有2020年3月份的数据,它都不属于前面已创建的这两个子分区,但如果用户在之后创建了2020年3月份这个新分区的话,我们数据库就会自动把这部分属于这个分区的数据从...比如说这个例子中SELECT调用的这个add_fnc函数,就只对这个SELECT有用,对于其他任何查询都是没有用的。

    1K50

    Kettle构建Hadoop ETL实践(八-1):维度表技术

    无法跨两个业务过程模式,共享单一产品维度表,因为它们需要的粒度是不同的。如果品牌表属性是产品表属性的严格的子集,则产品和品牌维度仍然是一致的。在这个例子中需要建立品牌维度表,它是产品维度表的子集。...对于不同州的销售分析可能需要浏览客户维度的子集,需要分析的维度仅包含部分客户数据。通过使用行的子集,不会破坏整个客户集合。当然,与该子集连接的事实表必须被限制在同样的客户子集中。...第二个是排序记录步骤,在执行分组查询前需要先进行排序。排序的字段按顺序为product_category、year、quarter、month,均为升序。...排序记录步骤,在执行分组前先进行排序,排序的字段按顺序为product_category、year、quarter、month、dt,均为升序。...Kettle转换中的步骤是并行的,如果输入步骤中调用的是输出步骤中的对象,则不会得到想要的结果。

    4.2K31

    花 31 万元重新设计网站后,我后悔了

    虽然还有一些细微的问题需要解决,但三个页面中的两个已经准备好交给开发人员了。 然后,又没声音了。 有两周的时间,开发团队没有任何活动。...WebAgency的一个开发人员用了这个月60个小时中的15个小时来修复问题队列中的小Bug 你可能会问,是什么促使 WebAgency 一定要去处理这些无关紧要的 Bug?...WebAgency 告诉我说,对于未使用的时间,他们不会退款,也不会延长时间,所以他们鼓励我用重新设计工作之外的任务超额预定时间表。...项目最终按照我一开始期望的速度进行。WebAgency 在 7 到 10 天内做好了每一个页面。 但问题仍然存在,不过这次我做好了准备。WebAgency 不断建议对设计进行完善。...我习惯于与自由职业者合作,而 WebAgency 则习惯于与大客户合作。 尽管存在失误和压力,结果证明所有经历的痛苦都是合理的。

    48220
    领券