我有一个数据框列表。每个数据框最初都是从中获取的数字数据,所有数据框都具有相同的形状,即21行5列。第一列是索引(索引0到索引20)。我想计算平均值并将其存储在单个数据框中。然后我想将该数据框导出到Excel。
以下是我现有代码的简化版本:
然而,当我打开Excel文件时,我看到每个数据帧好像都被复制到了工作表中,并且平均 / 均值数值没有显示。下面是一个简化的示例(减少了大部分行和数据框)。
我正在寻找更像这样的东西:
我已经看到了这个答案: 获取多个Pandas数据框的平均值 如果可能的话,我正在寻找一个简洁的解决方案,而不是仅仅通过循环遍历每个数据框的值来实现的解决方案。有什么建议吗?
以下是我现有代码的简化版本:
#look to concatenate the dataframes together all at once
#dataFrameList is the given list of dataFrames
concatenatedDataframes = pd.concat(dataFrameList, axis = 1)
#grouping the dataframes by the index, which is the same across all of the dataframes
groupedByIndex = concatenatedDataframes.groupby(level = 0)
#take the mean
meanDataFrame = groupedByIndex.mean()
# Create a Pandas Excel writer using openpyxl as the engine.
writer = pd.ExcelWriter(filepath, engine='openpyxl')
meanDataFrame.to_excel(writer)
然而,当我打开Excel文件时,我看到每个数据帧好像都被复制到了工作表中,并且平均 / 均值数值没有显示。下面是一个简化的示例(减少了大部分行和数据框)。
Dataframe 1 Dataframe 2 Dataframe 3
Index Col2 Col3 Col4 Col5 Col2 Col3 Col4 Col5 Col2 Col3 Col4 Col5
0 Data Data Data Data Data Data Data Data Data Data Data Data
1 Data Data Data Data Data Data Data Data Data Data Data Data
2 Data Data Data Data Data Data Data Data Data Data Data Data
....
我正在寻找更像这样的东西:
Averaged DF
Index Col2 Col3 Col4
0 Mean Index0,Col2 across DFs Mean Index0,Col3 across DFs Mean Index0,Col4 across DFs
1 Mean Index1,Col2 across DFs Mean Index1,Col3 across DFs Mean Index1,Col4 across DFs
2 Mean Index2,Col2 across DFs Mean Index2,Col3 across DFs Mean Index3,Col4 across DFs
...
我已经看到了这个答案: 获取多个Pandas数据框的平均值 如果可能的话,我正在寻找一个简洁的解决方案,而不是仅仅通过循环遍历每个数据框的值来实现的解决方案。有什么建议吗?