【发布时间】:2020-08-09 01:50:29
【问题描述】:
我想计算数据框中选定列中所有值的平均值。例如,我有一个包含 A、B、C、D 和 E 列的数据框,我想要 A、C 和 E 列中所有值的平均值。
import pandas as pd
df1 = pd.DataFrame( ( {'A': [1,2,3,4,5],
'B': [10,20,30,40,50],
'C': [11,21,31,41,51],
'D': [12,22,32,42,52],
'E': [13,23,33,43,53]} ) )
print( df1 )
print( "Mean of df1:", df1.mean() )
df2 = pd.concat( [df1['A'], df1['C'], df1['E'] ], ignore_index=True )
print( df2 )
print( "Mean of df2:", df2.mean() )
df3 = pd.DataFrame()
df3 = pd.concat( [ df3, df1['A'] ], ignore_index=True )
df3 = pd.concat( [ df3, df1['C'] ], ignore_index=True )
df3 = pd.concat( [ df3, df1['E'] ], ignore_index=True )
print( df3 )
print( "Mean of df3:", df3.mean() )
df2 为我提供了正确的答案,但我需要创建一个新的数据框来获得它。
我虽然像df1['A', 'C', 'E'].mean() 这样的东西会起作用,但它会返回每列的平均值,而不是组合平均值。有没有办法在不创建新数据框的情况下做到这一点?我还需要其他数据统计信息,例如 .std()、.min()、max(),所以这不仅仅是一次性计算。
【问题讨论】:
标签: python pandas multiple-columns mean