python - 如何在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)
解决方案
您可以创建一个熊猫系列并用零填充它 -
pd.Series(data, index=month_range).fillna(0).to_dict()
推荐阅读
- javascript - Extjs - 如何在面板上的固定位置添加工具提示
- ios - 使用 Cordova 在 iOS 上部署白屏 AngularApp
- powerbi - 将范围的第一天设置为初始库存 + 生产 - 销售 = 库存 (DAX)
- tkinter - 为什么我的 tkinter.Toplevel 小部件不会出现?
- angular - Redux:没有重载匹配此调用
- css - 未从公用文件夹在 Laravel 中加载 CSS 文件
- java - 我在线程“main”java.util.NoSuchElementException 中遇到异常:找不到行
- python - Pandas:如何添加一个额外的列来指示是否有 nan 数据
- c - 类似于 GCC 的 IAR __stackless
- python - 在 Ansible 中并行解压缩 zip 档案以加速 playbook 执行失败:“此任务不支持异步。”