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

如何在Pandas DataFrame中提取uncertainties模块的标称值与不确定度

解决方案

你可以直接使用uncertainties配套的unumpy模块提供的批量提取方法,直接从已生成的DataFrame中拆分标称值与不确定度,无需依赖原始构造时的数组。

完整实现代码

from uncertainties import unumpy
import pandas as pd
import numpy as np


# 你的原始AB DataFrame(此处仅为示例,可替换为你前置计算输出的AB)
A_n = 100 * np.random.rand(10)
A_s = np.random.rand(10)
B_n = 100 * np.random.rand(10)
B_s = np.random.rand(10)
AB = pd.DataFrame({'A':unumpy.uarray(A_n, A_s), 'B': unumpy.uarray(B_n, B_s)})

# 拆分标称值与不确定度
processed = pd.DataFrame()
for col in AB.columns:
    # 提取当前列标称值
    processed[col] = unumpy.nominal_values(AB[col])
    # 提取当前列对应不确定度
    processed['+/-'] = unumpy.std_devs(AB[col])

# 导出到Excel
AB_writer = pd.ExcelWriter('A.xlsx', engine = 'xlsxwriter', options={'strings_to_numbers': True})
processed.to_excel(AB_writer, sheet_name = 'Data', index=False, na_rep='nan')
AB_writer.close()

说明

  • 该实现完全适配你无法获取原始标称值、不确定度数组的场景,所有提取操作都基于已生成的AB DataFrame完成
  • 输出的表头顺序、内容和你期望的效果完全一致,数值会自动保留原始精度
  • 如果列数较多,也可以自定义不确定度列的命名规则,比如将processed['+/-']改为processed[f'{col}_±']避免重复列名

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 11:09:03