如何将含元组的OrderedDict转换为日期作为索引的Pandas DataFrame
实现步骤
- 首先导入所需依赖
import pandas as pd from collections import OrderedDict
- 定义你给出的OrderedDict对象
data = OrderedDict( [ ("2021-01-01" , {"name" : "John", "age" : 25}), ("2021-05-05" , {"name" : "Max", "age" : 15}), ("2021-09-09" , {"name" : "Michael", "age" : 35}) ] )
- 转换为符合要求的DataFrame
使用pandas的from_dict方法,指定orient='index'即可将字典的键(日期)作为行索引,内部字典的键自动作为列名,最后给索引设置名称为date即可匹配预期效果:
df = pd.DataFrame.from_dict(data, orient='index') df.index.name = 'date'
可选优化
如果需要将日期索引转为pandas的datetime类型方便后续时间运算,可以额外加一行代码:
df.index = pd.to_datetime(df.index)
输出验证
执行print(df)后得到的结果和预期一致:
name age date 2021-01-01 John 25 2021-05-05 Max 15 2021-09-09 Michael 35
内容的提问来源于stack exchange,提问作者edn
相关产品推荐
相关产品推荐

