You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从字典生成带DATE首列的单行大写列名pandas DataFrame

问题原因

你原代码使用orient='index'读取字典时会把水果名作为行索引,stack()操作会进一步将数据转为长结构,自然出现每个水果单独成行的结果,且列数和你指定的5列不匹配。

修正后的完整代码
import pandas as pd
import datetime

# 原水果数据
fruit_dict = {'apples': 12.0, 'pears': 14.0, 'oranges': 5.0, 'lemons': 2.0}
# 生成日期:如果需要示例中的年-月-日格式就用下方参数,要保留你原来的日/月/年格式改为"%d/%m/%Y"即可
now = datetime.datetime.now()
today = now.strftime("%Y-%m-%d")

# 1. 将字典的水果名键转为全大写
upper_fruit = {k.upper():v for k,v in fruit_dict.items()}
# 2. 加入DATE字段,放入列表代表仅1行数据
row_data = [{"DATE": today, **upper_fruit}]
# 3. 生成DataFrame
fruit_price = pd.DataFrame(row_data)

# 输出时去掉默认索引,和预期效果完全一致
print(fruit_price.to_string(index=False))
输出效果
DATE  APPLES  PEARS  ORANGES  LEMONS
 2024-05-20    12.0   14.0      5.0     2.0

内容的提问来源于stack exchange,提问作者alec22

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 18:45:09