我无法得到熊猫列的平均值或平均值。A有一个数据框架。下面我尝试的两种方法都没有给出列权值的平均值

>>> allDF 
         ID           birthyear  weight
0        619040       1962       0.1231231
1        600161       1963       0.981742
2      25602033       1963       1.3123124     
3        624870       1987       0.94212

下面返回多个值,而不是一个:

allDF[['weight']].mean(axis=1)

这个也一样:

allDF.groupby('weight').mean()

当前回答

你可以使用下面两种说法中的任何一种:

numpy.mean(df['col_name'])
# or
df['col_name'].mean()

其他回答

你可以使用agg (aggregate)方法:

df.agg('mean')

可以应用多个统计数据:

df.agg(['mean', 'max', 'min'])

你可以使用

df.describe() 

您将获得数据框架的基本统计数据,并获得您可以使用的特定列的平均值

df["columnname"].mean()

你可以使用下面两种说法中的任何一种:

numpy.mean(df['col_name'])
# or
df['col_name'].mean()

此外,如果你想在找到平均值后得到整数。

#Create a DataFrame
df1 = {
    'Subject':['semester1','semester2','semester3','semester4','semester1',
               'semester2','semester3'],
   'Score':[62.73,47.76,55.61,74.67,31.55,77.31,85.47]}
df1 = pd.DataFrame(df1,columns=['Subject','Score'])

rounded_mean = round(df1['Score'].mean()) # specified nothing as decimal place
print(rounded_mean) # 62

rounded_mean_decimal_0 = round(df1['Score'].mean(), 0) # specified decimal place as 0
print(rounded_mean_decimal_0) # 62.0

rounded_mean_decimal_1 = round(df1['Score'].mean(), 1) # specified decimal place as 1
print(rounded_mean_decimal_1) # 62.2

df中每列的平均值:

    A   B   C
0   5   3   8
1   5   3   9
2   8   4   9

df.mean()

A    6.000000
B    3.333333
C    8.666667
dtype: float64

如果你想求所有列的平均值

df.stack().mean()
6.0