怎么在SQLServer计算列和平均值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在SQLServer计算列和平均值相关的知识,希望对你有一定的参考价值。

select sum(字段名) 总和计,avg(字段名) 平均值 from 表名 参考技术A select 列1+列2+列3+列4+列5 as 列和,(列1+列2+列3+列4+列5)/5 as 平均值 from 表名本回答被提问者采纳

按列分组的每行的Python平均值[重复]

【中文标题】按列分组的每行的Python平均值[重复]【英文标题】:Python mean value for each row grouped by a column [duplicate] 【发布时间】:2020-01-17 17:28:28 【问题描述】:

我有一个 A 列和一个 B 列。在 Result 列中,我想计算按 A 列分组的 B 列的平均值(这意味着我想计算我在 Result 列中写入的内容)。

cor = pd.DataFrame('A' : [100, 100, 100, 200, 200, 300, 300, 300, 300],
                    'B' : [10, np.NaN, 20, np.NaN, 50, 10, 40, 60, 80],
                   'Result': [15, 15, 15, 50, 50, 47.5, 47.5, 47.5, 47.5])
print(cor)
values = cor.groupby('A').mean()

在我的数据集中我有大约 20 万行数据,所以这个函数应该是相当强大的。

【问题讨论】:

cor['Result'] = cor.groupby('A')['B'].transform('mean') 【参考方案1】:

这应该可行:

import pandas as pd
import numpy as np
cor = pd.DataFrame('A' : [100, 100, 100, 200, 200, 300, 300, 300, 300],
                    'B' : [10, np.NaN, 20, np.NaN, 50, 10, 40, 60, 80])
print(cor)
values = cor.groupby('A').mean().reset_index()
print(values)
df = cor.merge(values,how='left',left_on=['A'],right_on=['A'])
df = df.rename(columns="B_x":"B","B_y":"Result")
print(df)

输出:

    A     B  Result
0  100  10.0    15.0
1  100   NaN    15.0
2  100  20.0    15.0
3  200   NaN    50.0
4  200  50.0    50.0
5  300  10.0    47.5
6  300  40.0    47.5
7  300  60.0    47.5
8  300  80.0    47.5

【讨论】:

以上是关于怎么在SQLServer计算列和平均值的主要内容,如果未能解决你的问题,请参考以下文章

pandas使用to_datetime函数将字符串时间数据列转化为时间对象数据列计算dataframe结束时间列和起始时间列的时间差并计算时间差的均值

如何在 Visual Studio vb.net 代码中计算平均值? (矩阵)

计算平均数

07-SQLSERVER聚合函数

按列分组的每行的Python平均值[重复]

SQL Server - 查询以根据每年的最后一个值计算加权平均值