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

如何在Python中合并多DataFrame指定列并计算行均值?

解决方法

直接按以下步骤操作即可,代码包含详细注释:

1. 提取并整理所有DataFrame的'd'列

先从列表里的每个DataFrame中取出'd'列,给每个列赋予唯一名称(避免合并后列名冲突):

import pandas as pd

# 假设你的dataFrameList已存在,比如:dataFrameList = [df1, df2, df3, ...]

# 提取每个df的'd'列并命名
d_columns = [df['d'].rename(f'd_{i}') for i, df in enumerate(dataFrameList)]

2. 横向合并成newDataFrame

用pd.concat横向拼接所有提取出的列,因为行数不同,使用join='outer'保留所有行,缺失值自动填充为NaN:

newDataFrame = pd.concat(d_columns, axis=1, join='outer')

3. 计算每行的均值

直接调用mean()方法,指定axis=1按行计算,默认会忽略NaN值:

newDataFrame['mean_d'] = newDataFrame.mean(axis=1)

关键点说明

  • 给提取的'd'列重命名是必须的,否则所有列都叫'd',合并后会出现重复列名,后续操作容易出错
  • join='outer'保证了不管原始DataFrame行数多少,所有行都会被保留,缺失的位置用NaN填充
  • 如果需要把NaN当作0计算均值,可以修改为:newDataFrame.fillna(0).mean(axis=1)

内容的提问来源于stack exchange,提问作者Na.Az

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 13:17:02