我有一個數據框列表。每個數據幀最初都是從其中取得的數字數據,其形狀與21行和5列相同。第一列是索引(索引0到索引20)。我想要將平均值(平均值)計算爲單個數據幀。然後我想將數據框導出爲excel。在Python中用數據框計算平均值/平均值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文件,我看到什麼看起來像每一個數據幀複製到片,平均/不顯示平均值。一個簡單的例子如下所示(切割最行和dataframes的)
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
...
我也已經看到了這樣的回答: Get the mean across multiple Pandas DataFrames
如果可能的話,我正在尋找一個乾淨的解決方案,而不是僅僅涉及通過值循環每個dataFrame值的方案。有什麼建議麼?
這似乎產生一個系列,這並不完全符合我要找的 –
我適應我的答案,現在你明確你需要什麼 –
完美無缺,正是我一直在尋找的! –