首页 > 解决方案 > 如何在python dict中包含空日期时间

问题描述

我目前拥有的字典是

data = {'Jun 2006': 300.0, 'Nov 2006': 200.0}

我正在寻找的输出是

data = {'Jun 2006': 300.0, 'Jul 2006': 0, 'Aug 2006': 0, 'Sep 2006': 0, 'Oct 2006': 0, 'Nov 2006': 200.0}

我当前的代码

data = {'Jun 2006': 300.0, 'Nov 2006': 200.0}

import pandas as pd
from datetime import datetime

month_range = pd.date_range(start=list(data.keys())[0], end=list(data.keys())[-1], freq='MS').strftime('%b %Y').tolist()

final_data = {}
for month in month_range:
    if(month in data):
        final_data[month] = data[month]
    else:
        final_data[month] = 0

print(final_data)

标签: pythondictionary

解决方案


您可以创建一个熊猫系列并用零填充它 -

pd.Series(data, index=month_range).fillna(0).to_dict()

推荐阅读