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

如何使用pandas将时间步长字典转换为浮点型DataFrame

实现方法

前置准备

首先确保你已经导入pandas库,符合你描述的示例字典结构如下:

import pandas as pd

time_step_dict = {
    0: ["1.1", "2.2", "3.3"],
    1: ["4.4", "5.5", "6.6"],
    2: ["7.7", "8.8", "9.9"]
}

最简实现(所有字符串均为合法数值格式时使用)

直接创建DataFrame后批量转换类型,字典的键会默认作为DataFrame的列名:

df = pd.DataFrame(time_step_dict).astype(float)

如果需要将时间步作为行索引,补充转置操作即可:

df = pd.DataFrame(time_step_dict).astype(float).T
# 可选:给索引设置名称
df.index.name = "time_steps"

带异常兼容的实现(存在不规范字符串值时使用)

如果不确定所有字符串都能正常转成float,可以用pd.to_numeric做兼容处理,无效值会自动转成NaN,不会中断运行:

# errors='coerce'表示把无法转换为float的字符串转为空值NaN
df = pd.DataFrame(time_step_dict).apply(pd.to_numeric, errors='coerce')

说明

  • 两种实现都默认适配你提到的「所有时间步对应列表长度完全一致」的前提,不需要额外做长度对齐操作
  • 对性能有要求的场景优先选astype(float),执行效率比逐列应用pd.to_numeric更高

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 01:36:04