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

如何将DataFrame行数据转列并合并至指定结构的空DataFrame?

如何将DataFrame中的统计数据提取插入到目标空DataFrame中

问题场景

我有两个DataFrame:第一个包含某产品的统计数据,第二个是创建的空DataFrame。需要将第一个DataFrame中的数据提取并插入到第二个DataFrame中,目前仅掌握按行或列拼接数据的方法,该如何实现?

代码示例

product = 'PRDQM0011122TR131'
prod_results = pm.summary(trace_dict_prodlevel[product])
prod_results

prod_results的结构:

meansd
Slope-0.012-0.012
Intercept0.9060.356
prod_results1 = pd.DataFrame(columns = ['product', 'slope_mean', 'slope_sd', 'int_mean', 'int_sd'])
prod_results1

prod_results1的初始结构:

productslope_meanslope_sdint_meanint_sd

期望输出

productslope_meanslope_sdint_meanint_sd
PRDQM0011122TR131-0.012-0.0120.9060.356

解决方案

方法1:用pd.concat拼接单行DataFrame(符合你熟悉的拼接逻辑)

先从源DataFrame提取数据,构造出包含目标行的单行DataFrame,再用concat按行拼接到空DataFrame中:

# 提取源数据中的统计值
slope_mean = prod_results.loc['Slope', 'mean']
slope_sd = prod_results.loc['Slope', 'sd']
int_mean = prod_results.loc['Intercept', 'mean']
int_sd = prod_results.loc['Intercept', 'sd']

# 构造单行DataFrame
new_row_df = pd.DataFrame({
    'product': [product],
    'slope_mean': [slope_mean],
    'slope_sd': [slope_sd],
    'int_mean': [int_mean],
    'int_sd': [int_sd]
})

# 按行拼接两个DataFrame
prod_results1 = pd.concat([prod_results1, new_row_df], ignore_index=True)

方法2:用append插入字典行

通过字典构造行数据,直接追加到空DataFrame中(注意:append在pandas 2.0+版本已被标记为弃用,但仍可使用):

new_row = {
    'product': product,
    'slope_mean': prod_results.loc['Slope', 'mean'],
    'slope_sd': prod_results.loc['Slope', 'sd'],
    'int_mean': prod_results.loc['Intercept', 'mean'],
    'int_sd': prod_results.loc['Intercept', 'sd']
}

prod_results1 = prod_results1.append(new_row, ignore_index=True)

方法3:直接用loc赋值

直接定位空DataFrame的行位置,赋值对应数据:

prod_results1.loc[0] = [
    product,
    prod_results.loc['Slope', 'mean'],
    prod_results.loc['Slope', 'sd'],
    prod_results.loc['Intercept', 'mean'],
    prod_results.loc['Intercept', 'sd']
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 13:00:57