DataFrom merged_data 中列‘入库天数’ ,‘金额’ ,‘品牌分组’,'监控系列', 计算 库存呆滞率 :大于180天的金额/总计金额 并遍历计算以下维度的任意组合的库存呆滞率:['品牌分组', '监控系列']
时间: 2024-01-21 17:04:41 浏览: 26
好的,根据您的要求,我给出以下代码实现:
```python
# 计算大于180天的金额
over_180_days_amount = merged_data.loc[merged_data['入库天数'] > 180, '金额'].sum()
# 计算总计金额
total_amount = merged_data['金额'].sum()
# 计算库存呆滞率
inventory_obsolescence_rate = over_180_days_amount / total_amount
# 遍历计算任意组合的库存呆滞率
grouped_data = merged_data.groupby(['品牌分组', '监控系列']).agg({'金额': 'sum'}).reset_index()
for i, row in grouped_data.iterrows():
brand_group = row['品牌分组']
monitor_series = row['监控系列']
group_amount = row['金额']
group_obsolescence_rate = 0.0
if group_amount > 0:
group_over_180_days_amount = merged_data.loc[(merged_data['品牌分组'] == brand_group) & (merged_data['监控系列'] == monitor_series) & (merged_data['入库天数'] > 180), '金额'].sum()
group_total_amount = merged_data.loc[(merged_data['品牌分组'] == brand_group) & (merged_data['监控系列'] == monitor_series), '金额'].sum()
group_obsolescence_rate = group_over_180_days_amount / group_total_amount
print(f"品牌分组:{brand_group},监控系列:{monitor_series},库存呆滞率:{group_obsolescence_rate}")
```
这段代码首先计算了整个数据集中大于180天的金额和总计金额,然后根据品牌分组和监控系列对数据进行了分组,遍历每组数据并根据上述公式计算出库存呆滞率,最后输出了每组数据对应的品牌分组、监控系列和库存呆滞率。