转自公众号可以叫我才哥

今天在粉丝交流群里有群友询问了一个已知每个货品的库存,求组合商品(就是多个货品捆绑组合成一个组合商品)的库存量。逻辑上讲,应该是组合商品里货品库存最低的那个货品存量决定整个组合商品的库存量(水桶原理),那么如何实现呢?

事实上,这个计算比较简单,但是里面还是有一些坑,大家可以阅读本例了解一下!

1. 需求分析

咱们先看看原始数据,然后再进行需求拆解。

货品库存数据(去掉了其他无关信息)

货品库存

组合商品数据(库存字段为待求数据)

组合商品

通过看两份原始数据,其实我们都能在脑海里有计算逻辑了,在excel里先通过vlookup匹配每个组成商品对应库存量,然后再按照组合商品进行透视分组计算库存量最小值即可。

基于以上思路,大家可以自己试试用excel透视表进行处理。不过,本文我们也会提供两种方式才进行处理,分别是pythonexcel数据合并计算

2. 计算过程

我们先介绍用python实现本案例,同样的python实现的方式也有多种,核心思路就是先匹配每个组成商品的库存量,然后再求出分组里各商品库存量最小值即可

2.1. python计算过程

核心pandasmergetransform函数方法

import pandas as pd# 读取数据
df = pd.read_excel(r'案例数据.xlsx', sheet_name='组合商品')
df1 = pd.read_excel(r'案例数据.xlsx', sheet_name='总库存')# 由于组合商品中存在空行,所以这里删除,并采用向上填充的方式填充组合商品字段的空值
temp = df.dropna(how='all').ffill()
temp.head()

组合商品预览

在组合商品中存在部分组合商品里的其实是同一种商品的N件组合,这种情况下算库存是需要除以N的,这也是本案例的一个可能踩到的坑。

N件组合装

所以,这里我们需要对组合商品字段进行简单的数据分列拆分(可以参考此前推文《一看就会的Pandas文本数据处理》)。

temp['货品编号'] = temp['组成商品'].str.split('*',expand=True)[0]
# 注意货品数量字段类型转换为 数值类型
temp['货品数量'] = temp['组成商品'].str.split('*',expand=True)[1].fillna(1).astype('int')
temp.head()

接着,我们将每个货品对应库存量匹配上来,用到merge函数。

# 货品库存预览
df1.sample(5)

temp = temp.merge(df1,how='left')
# 由于每个组合商品是多个商品按照一定数量组合的,所以实际库存量应该除以每个货品在组合里的数量
temp['库存量'] = temp['库存量']//temp['货品数量']
temp.head()

到这里,我们就好处理组合商品的库存了(就是其对应组成商品的库存量最小值)。大家会怎么来计算呢?首先想到的可能是分组或透视的形式,当然这里用到的是transform,大家可以用别的试试哈。

temp['库存'] = temp.groupby('组合商品')['库存量'].transform('min')
temp.head()

2.2. excel操作过程

这里也是简单介绍一种操作技巧抛砖引玉,大家可以补充更多方案哈。

先去掉空行

然后将组合商品字段填充

=IF(B3="",A2,B3)

接着对组合商品表中组成商品分列(按照*

分列

再用vlookup获取每个组成商品的的库存量

计算对组合商品而言实际库存(除以单组成商品数量)

=ROUNDDOWN(IFERROR(E2/D2,E2),0)

最后,菜单栏 数据->合并计算 来求值

合并计算

计算设置

结果预览

以上就是一种excel的操作技巧,这里用到的是数据->合并计算!!

3. 总结

其实,本案例实际上并没有什么难度,而且我们的解决方案也有很多种,核心思路就是匹配+分组的思想。大家可以基于此,结合自己对工具的理解,试试更多种解法来强化哈!

案例数据大家可以扫描下方二维码添加好友,并回复:电商笔试,获取数据。

长按识别二维码

一道简单的电商数据分析笔试题:求组合商品的库存量相关推荐

  1. 通过一个简单的电商零售数据集,了解数据分析流程

    目录 数据分析流程 1.数据分析真实项目流程 2.数据分析方法 3.零售消费数据数据集介绍 4.分析内容 明确分析的目的 案例分析实战 1理解数据 2数据清洗 3数据分析和可视化 1.购买商品前十的国 ...

  2. 【超详细】数据分析笔试题分享,可以收藏后仔细阅读

    大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我或者我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 又到了笔 ...

  3. 2020年小红书校招数据分析笔试题

    今天给大家带来2020年小红书校招的数据分析笔试题的详解 1.如果在小红书商城中某一商户给一产品定价,如果按照全网最低价500元定价,那么客人就一定会选择在此购买:价格每增加1元,客人的流失的可能性就 ...

  4. GA 电商数据分析实践课

    课程介绍 一个电商的流量会某天突然大涨 30%,或者大跌 30%:季节性(比如11.11)订单量会出现突然大涨或大跌: 碰到这些异常,作为电商数据分析师的你需要查出导致异常数据的主要原因(或甚至更深层 ...

  5. Spark 实时电商数据分析及可视化

    Spark 实时电商数据分析可视化系统是一个经典的大数据应用项目,技术栈主要有 Flume.Kafka.Spark Streaming.Flask 等,帮助大家了解和运用一些当前热门的大数据处理组件来 ...

  6. Amazon电商数据分析——数据获取

    最近一段时间主要重心在Amazon电商数据分析上,这是一个偏数据分析和可视化的项目.具体来说就是先获取Amazon的商品数据,数据清洗和持久化存储后作为我们自己的数据源.分析模块和可视化模块基于数据进 ...

  7. 电商数据分析流程 | Excel实操

    世界上最深入人心的数据分析工具,是Excel,在日本的程序员考试中,程序语言部分,是可以选择Excel表格工具作为考试选项的.可见其重要性. 数据分析的步骤: 提出问题 理解数据 数据清洗 构建模型 ...

  8. 电商数据分析指标体系

    数据分析的五大思维方式. 首先,我们要知道,什么叫数据分析.其实从数据到信息的这个过程,就是数据分析.数据本身并没有什么价值,有价值的是我们从数据中提取出来的信息. 然而,我们还要搞清楚数据分析的目的 ...

  9. 电商数据分析--常见的数据采集工具及方法

    大家好,我是小五 电商数据分析中,常见的数据采集工具及方法有下面几种: 火车采集器:可以做数据抓取,数据清洗.分析.挖掘.可视化等. 搜集客:采集数据,所有爬虫需要在自己电脑上跑. 八爪鱼:免费版.付 ...

最新文章

  1. 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  2. Laravel 有哪些核心的内容?
  3. SpringBoot整合spring-ws开发webservice接口(全流程详细教程)
  4. 【Python】matplotlib可视化必知必会富文本绘制方法
  5. android 动态调用apk,通过反射动态加载未安装apk
  6. Spring综合课程总结
  7. DB天气app冲刺二阶段第七天
  8. Java中的13个原子操作类
  9. JEECG开源社区, 成立了微信二次开发项目,欢迎有兴趣朋友参与
  10. Unity3D-RPG项目实战(1):发动机的特殊文件夹
  11. 员工借款及还款场景演练
  12. WebApp前端页面性能优化建议
  13. python 复制文件并重命名_潘石屹都开始学Python了,你还有什么理由放弃?
  14. bash: test1: command not found
  15. Linux文件上传下载sz 和 rz 命令
  16. 谈谈全自动安装常使用的pip install的原理及作用!!!
  17. hadoop学习资源与路线图
  18. Houdini学习笔记
  19. linux搜狗输入法16.04,Unbuntu16.04安装搜狗拼音输入法的图文教程
  20. could not find driver (SQL: select * from information_schema.tables where table_schema = oliver and

热门文章

  1. 科技云报道:FONE:半年融资过亿元,打造EPM领域“最强国货”
  2. 2022年初级会计职称考试会计实务练习题及答案
  3. 项目管理高手常用的10种图表!
  4. 单基因gsea_零代码5分+的单基因综合分析
  5. 怎么给Guest 账户设置密码
  6. 自媒体平台:大鱼计划,20亿大鱼平台奖励金如何获取?
  7. Class.forName 报错 java.lang.RuntimeException: java.lang.ClassNotFoundException: Persion
  8. 为什么苹果日历不能设置日程_iphone6提醒事项加入日历怎么不提醒我 到时
  9. 超全万字汇总!科研论文绘图实操干货!11类Matplotlib图表,含代码
  10. jxl导出excel标题乱码