导航:首页 > 网络数据 > 统计大数据取平均值

统计大数据取平均值

发布时间:2023-02-05 15:57:09

① EXCEL如果大数据筛选一个名字的其他数据平均值

如果数据在A列,那么输入
=SUBTOTAL(1,A:A)
或者=SUBTOTAL(101,A:A)
公式表示:对A列可见单元格求平均值。隐藏的数据不在求值范围。
?
详见附图
?

② spss如何计算加权平均数

选择菜单数据——加权个案,在最下边。打开主面板,在右边选择加权个案,然后把你用来做频率的变量选进去。然后确定。在菜单分析——描述统计里边,打开主面板,选择你想算平均数的变量,然后,确定,ok。这之后你所有的计算都是加过全的,如果你想取消掉,那就重新打开加权个案主面板,选回不对个案进行加权就可以了。

ppv课,大数据培训专家,您身边最专业的大数据中心,海量视频免费看哦。

③ # 大数据的统计学基础

概率论是统计学的基础,统计学冲锋在应用第一线,概率论提供武器。

我们在学习R的时候,会做过假设检验。做假设检验的时候会有一个基本的技术就是构造出统计量,这些统计量要满足一定的概率密度分布,然后我算这个统计量的值,来判定它在这个密度分布里面,分布在哪个区域,出现在这个区域内的可能性有多高,如果可能性太低,我们就判定我们的假设检验是不成立的。 那么如何构造这个统计量,这是一个很有技术的东西,同时也是由数学家来完成的,那这个工作就是概率论所作的事情。

古典概率论: 扔硬币,正面1/2反面1/2,扔的次数之间是相互独立的。 但是这个等概率事件确实是一个不是很严谨的事情。仔细想一想其实是很有趣的。 柯尔莫哥洛夫创建现代概率论 他将概率论提出了许多公理,因此将概率论变成了非常严谨的一门学科。

学会和运用概率,会使人变得聪明,决策更准确。

统计学 : 统计学可以分为:描述统计学与推断统计学 描述统计学 :使用特定的数字或者图表来体现数据的集中程度和离散程度。比如:每次考试算的平均分,最高分,各个分数段的人数分布等,也是属于描述统计学的范围。 推断统计学 :根据样本数据推断总体数据特征。比如:产品质量检查,一般采用抽样检测,根据所抽样本的质量合格率作为总体的质量合格率的一个估计。 统计学的应用十分广泛,可以说,只要有数据,就有统计学的用武之地。目前比较热门的应用:经济学,医学,心理学,IT行业大数据方面等。

例如:对于 1 2 3 4 5 这组数据,你会使用哪个数字作为代表呢? 答案是3。 因为3是这组数据的中心。 对于一组数据,如果只容许使用一个数字去代表这组数据,那么这个数字应该如何选择???-----选择数据的中心,即反映数据集中趋势的统计量。 集中趋势:在统计学里面的意思是任意种数据向 中心值靠拢 的程度。它可以反映出数据中心点所在的位置。 我们经常用到的能够反映出集中趋势的统计量: 均值:算数平均数,描述 平均水平 。 中位数:将数据按大小排列后位于正中间的数描述,描述 中等水平 。 众数:数据种出现最多的数,描述 一般水平

均值:算数平均数 例如:某次数学考试种,小组A与小组B的成员成绩分别如下: A:70,85,62,98,92 B:82,87,95,80,83 分别求出两组的平均数,并比较两组的成绩。

组B的平均分比组A的高,就是组B的总体成绩比组A高。

中位数:将数据按大小顺序(从大到小或者从小到大)排列后处于 中间位置 的数。 例如:58,32,46,92,73,88,23 1.先排序:23,32,46,58,73,88,92 2.找出中间位置的数23,32,46, 58 ,73,88,92 如果数据中是偶数个数,那么结果会发生什么改变? 例如:58,32,46,92,73,88,23,63 1.先排序:23,32,46,58,63,73,88,92 2.找出处于中间位置的数:23,32,46, 58 63 ,73,88,92 3.若处于中间位置的数据有两个(也就是数据的总个数为偶数时),中位数为中间两个数的算数平均数:(58+63)/2=60.5 在原数据中,四个数字比60.5小,四个数字比60.5大。

众数:数据中出现次数最多的数(所占比例最大的数) 一组数据中,可能会存在多个众数,也可能不存在众数。 1 2 2 3 3 中,众数是2 和 3 1 2 3 4 5 中,没有众数 1 1 2 2 3 3 4 4 中,也没有众数 只要出现的频率是一样的,那么就不存在众数 众数不仅适用于数值型数据,对于非数值型数据也同样适合 {苹果,苹果,香蕉,橙子,橙子,橙子,橙子,桃子}这一组数据,没有什么均值中位数科研,但是存在众数---橙子。 但是在R语言里面没有直接计算众数的内置函数,不过可以通过统计数据出现的频率变相的去求众数。

下面比较一下均值,中位数,众数三个统计量有什么优点和缺点 [图片上传失败...(image-57f18-1586015539906)]

例子: 两个公司的员工及薪资构成如下: A:经理1名,月薪100000;高级员工15名,月薪10000;普通员工20名,月薪7500 B:经理1名,月薪20000;高级员工20名,月薪11000;普通员工15名,月薪9000 请比较两家公司的薪资水平。若只考虑薪资,你会选择哪一家公司?

A 7500 B 11000

A 7500 B 11000</pre>

若从均值的角度考虑,明显地A公司的平均月薪比B公司的高,但是A公司存在一个极端值,大大地拉高了A公司的均值,这时只从均值考虑明显不太科学。从中位数和众数来看,B公司的薪资水平比较高,若是一般员工,选择B公司显得更加合理。

比较下面两组数据: A: 1 2 5 8 9 B: 3 4 5 6 7 两组数据的均值都是5,但是你可以看出B组的数据与5更加接近。但是有描述集中趋势的统计量不够,需要有描述数据的离散程度的统计量。

极差 :最大值 - 最小值,简单地描述数据的范围大小。 A: 9 - 1 = 8 B: 7 - 3 = 4 同样的5个数,A的极差比B的极差要大,所以也比B的要分散 但是只用极差这个衡量离散程度也存在不足 比如: A: 1 2 5 8 9 B: 1 4 5 6 9 两组数据虽然极差都是相同的,但是B组数据整体分布上更加靠近5。

方差 :在统计学上,更常地是使用方差来描述数据的 离散程度 :数据离中心越远,越离散。 方差越大,就代表这组数据越离散。

对于前面的数据 1 2 5 8 9,前面求的一组数据的方差是12.5。 将12.5于原始数据进行比较,可以看出12.5比原数据都大,这是否就能说明这一组数据十分离散呢? 其实方差与元数据的单位是不一样的,这样比较也是毫无意义的。如果原始数据的单位是m的话,那么方差的单位就是m^2 为了保持单位的一致性,我们引入一个新的统计量:标准差 标准差:sqrt(var()), 有效地避免了因为单位的平方而引起的度量问题。 与方差一样,标准差的值越大,表示数据越分散。 A: 1 2 5 8 9 B: 3 4 5 6 7

某班40个学生某次数学检测的成绩如下:

63,84,91,53,69,81,61,69,78,75,81,67,76,81,79,94,61,69,89,70,70,87,81,86,90,88,85,67,71,82,87,75,87,95,53,65,74,77 对于这一组数字,你能看出什么呢? 或许先算一算平均值,中位数,或者众数

或许算一算这组数据的方差或者标准差

但是即便是统计了上述的数据,我们还是对全班同学的分数分布,没有一个全面的了解。 原始数据太杂乱无章,难以看出规律性,只依赖数字来描述集中趋势与离散程度让人难以对数据产生直观地印象,这是我们就需要用到图标来展示这些数字。

1.找出上面数据中的最大值和最小是,确定数据的范围。

将成绩排序后很容易得到最大值是95,最小值是53

2.整理数据,将数据按照成绩分为几个组。成绩按照一般50-60,60-70,70-80,80-90,90-100这几个分段来划分(一般都分为5-10组),然后统计这几个分段内部的频数。 可以看到80-90这个分段的人数是最多的。 注意在绘制直方图的时候,一定要知道是左闭右开还是左开右闭。 因为这个可能会直接影响到频数的统计。

上图就是:频数直方图。频数作为纵坐标,成绩作为横坐标。通过直方图我们可以对成绩有一个非常直观的印象。 除了频数直方图,还有一种直方图:频率直方图。与频数直方图相比,频率直方图的纵坐标有所改变,使用了频率/组距。 频率=频数/总数;组距就是分组的极差,这里的组距是10.

除了直方图外,画一个简单的箱线图也可以大致看出数据的分布。


想要看懂箱线图,必须要学习一些箱线图专业的名词: 下四分位数:Q1,将所有的数据按照从小到大的顺序排序,排在第25%位置的数字。 上四分位数:Q3,将所有的数据按照从小到大的顺序排序,排在第75%位置的数字。 四分距:IQR,等于Q3-Q1,衡量数据离散程度的一个统计量。 异常点:小于Q1-1.5IQR或者大于Q3+1.5IQR的值。 (注意是1.5倍的IQR) 上边缘:除异常点以外的数据中的最大值 下边缘:除异常点以外的数据种的最小值

茎叶图可以在保留全部数据信息的情况下,直观地显示出数据的分布情况。 左边是茎,右边是叶。 若将茎叶图旋转90度,则可以得到一个类似于直方图的图。跟直方图一样,也可以直观地知道数据的分布情况。 并且可以保留所有的数据信息。 茎叶图的画法也非常的简单: 将数据分为茎和叶两部分,这里的茎是指十位上的数字,叶是指给上的数字。 将茎部份(十位)从小到大,从上到下写出来 相对于各自的茎,将同一茎(十位)从小到大,从左往右写出来。

但是茎叶图也有缺陷,因为百位和十位同时画在茎叶图的时候,容易区分不开。同时也可能出现却叶的情况。

以时间作为横坐标,变量作为纵坐标,反映变量随时间推移的变化趋势。

显示一段时间内的数据变化或者显示各项之间的比较情况。

根据各项所占百分比决定在饼图中扇形的面积。简单易懂,通俗明了。可以更加形象地看出各个项目所占的比例大小。 适当的运用一些统计图表,可以更生动形象的说明,不再只是纯数字的枯燥描述。

学习链接: https://www.bilibili.com/video/BV1Ut411r7RG

④ 大数据十大经典算法之k-means

大数据十大经典算法之k-means
k均值算法基本思想:
K均值算法是基于质心的技术。它以K为输入参数,把n个对象集合分为k个簇,使得簇内的相似度高,簇间的相似度低。
处理流程:
1、为每个聚类确定一个初始聚类中心,这样就有k个初始聚类中心;
2、将样本按照最小距离原则分配到最邻近聚类
3、使用每个聚类中的样本均值作为新的聚类中心
4、重复步骤2直到聚类中心不再变化
5、结束,得到K个聚类
划分聚类方法对数据集进行聚类时的要点:
1、选定某种距离作为数据样本间的相似性度量,通常选择欧氏距离。
2、选择平价聚类性能的准则函数
用误差平方和准则函数来评价聚类性能。
3、相似度的计算分局一个簇中对象的平均值来进行
K均值算法的优点:
如果变量很大,K均值比层次聚类的计算速度较快(如果K很小);
与层次聚类相比,K均值可以得到更紧密的簇,尤其是对于球状簇;
对于大数据集,是可伸缩和高效率的;
算法尝试找出使平方误差函数值最小的k个划分。当结果簇是密集的,而簇与簇之间区别明显的时候,效果较好。
K均值算法缺点:
最后结果受初始值的影响。解决办法是多次尝试取不同的初始值。
可能发生距离簇中心m最近的样本集为空的情况,因此m得不到更新。这是一个必须处理的问题,但我们忽略该问题。
不适合发现非凸面形状的簇,并对噪声和离群点数据较敏感,因为少量的这类数据能够对均值产生较大的影响。
K均值算法的改进:
样本预处理。计算样本对象量量之间的距离,筛掉与其他所有样本那的距离和最大的m个对象。
初始聚类中心的选择。选用簇中位置最靠近中心的对象,这样可以避免孤立点的影响。
K均值算法的变种:
K众数(k-modes)算法,针对分类属性的度量和更新质心的问题而改进。
EM(期望最大化)算法
k-prototype算法
这种算法不适合处理离散型属性,但是对于连续型具有较好的聚类效果。
k均值算法用途:
图像分割;
衡量足球队的水平;
下面给出代码
#include <iostream>
#include <vector>
//auther archersc
//JLU
namespace CS_LIB
{
using namespace std;
class Kmean
{
public:
//输入格式
//数据数量N 维度D
//以下N行,每行D个数据
istream& loadData(istream& in);
//输出格式
//聚类的数量CN
//中心维度CD
//CN行,每行CD个数据
//数据数量DN
//数据维度DD
//以下DN组,每组的第一行两个数值DB, DDis
//第二行DD个数值
//DB表示改数据属于一类,DDis表示距离改类的中心的距离
ostream& saveData(ostream& out);
//设置中心的数量
void setCenterCount(const size_t count);
size_t getCenterCount() const;
//times最大迭代次数, maxE ,E(t)表示第t次迭代后的平方误差和,当|E(t+1) - E(t)| < maxE时终止
void clustering(size_t times, double maxE);

private:
double calDistance(vector<double>& v1, vector<double>& v2);

private:
vector< vector<double> > m_Data;
vector< vector<double> > m_Center;
vector<double> m_Distance;
vector<size_t> m_DataBelong;
vector<size_t> m_DataBelongCount;
};
}
#include "kmean.h"

#include <ctime>
#include <cmath>
#include <cstdlib>
//auther archersc
//JLU

namespace CS_LIB
{
template<class T>
void swap(T& a, T& b)
{
T c = a;
a = b;
b = c;
}

istream& Kmean::loadData(istream& in)
{
if (!in){
cout << "input error" << endl;
return in;
}
size_t dCount, dDim;
in >> dCount >> dDim;
m_Data.resize(dCount);
m_DataBelong.resize(dCount);
m_Distance.resize(dCount);
for (size_t i = 0; i < dCount; ++i){
m_Data[i].resize(dDim);
for (size_t j = 0; j < dDim; ++j){
in >> m_Data[i][j];
}
}
return in;
}
ostream& Kmean::saveData(ostream& out)
{
if (!out){
cout << "output error" << endl;
return out;
}
out << m_Center.size();
if (m_Center.size() > 0)
out << << m_Center[0].size();
else
out << << 0;
out << endl << endl;
for (size_t i = 0; i < m_Center.size(); ++i){
for (size_t j = 0; j < m_Center[i].size(); ++j){
out << m_Center[i][j] << ;
}
out << endl;
}
out << endl;
out << m_Data.size();
if (m_Data.size() > 0)
out << << m_Data[0].size();
else
out << << 0;
out << endl << endl;
for (size_t i = 0; i < m_Data.size(); ++i){
out << m_DataBelong[i] << << m_Distance[i] << endl;
for (size_t j = 0; j < m_Data[i].size(); ++j){
out << m_Data[i][j] << ;
}
out << endl << endl;
}
return out;
}
void Kmean::setCenterCount(const size_t count)
{
m_Center.resize(count);
m_DataBelongCount.resize(count);
}
size_t Kmean::getCenterCount() const
{
return m_Center.size();
}
void Kmean::clustering(size_t times, double maxE)
{
srand((unsigned int)time(NULL));
//随机从m_Data中选取m_Center.size()个不同的样本点作为初始中心。
size_t *pos = new size_t[m_Data.size()];
size_t i, j, t;
for (i = 0; i < m_Data.size(); ++i){
pos[i] = i;
}
for (i = 0; i < (m_Data.size() << 1); ++i){
size_t s1 = rand() % m_Data.size();
size_t s2 = rand() % m_Data.size();
swap(pos[s1], pos[s2]);
}
for (i = 0; i < m_Center.size(); ++i){
m_Center[i].resize(m_Data[pos[i]].size());
for (j = 0; j < m_Data[pos[i]].size(); ++j){
m_Center[i][j] = m_Data[pos[i]][j];
}
}
delete []pos;
double currE, lastE;
for (t = 0; t < times; ++t){
for (i = 0; i < m_Distance.size(); ++i)
m_Distance[i] = LONG_MAX;
for (i = 0; i < m_DataBelongCount.size(); ++i)
m_DataBelongCount[i] = 0;
currE = 0.0;
for (i = 0; i < m_Data.size(); ++i){
for (j = 0; j < m_Center.size(); ++j){
double dis = calDistance(m_Data[i], m_Center[j]);
if (dis < m_Distance[i]){
m_Distance[i] = dis;
m_DataBelong[i] = j;
}
}
currE += m_Distance[i];
m_DataBelongCount[m_DataBelong[i]]++;
}
cout << currE << endl;
if (t == 0 || fabs(currE - lastE) > maxE)
lastE = currE;
else
break;
for (i = 0; i < m_Center.size(); ++i){
for (j = 0; j < m_Center[i].size(); ++j)
m_Center[i][j] = 0.0;

}
for (i = 0; i < m_DataBelong.size(); ++i){
for (j = 0; j < m_Data[i].size(); ++j){
m_Center[m_DataBelong[i]][j] += m_Data[i][j] / m_DataBelongCount[m_DataBelong[i]];
}
}
}
}
double Kmean::calDistance(vector<double>& v1, vector<double>& v2)
{
double result = 0.0;
for (size_t i = 0; i < v1.size(); ++i){
result += (v1[i] - v2[i]) * (v1[i] - v2[i]);
}
return pow(result, 1.0 / v1.size());
//return sqrt(result);
}
}
#include <iostream>
#include <fstream>
#include "kmean.h"
using namespace std;
using namespace CS_LIB;

int main()
{
ifstream in("in.txt");
ofstream out("out.txt");
Kmean kmean;
kmean.loadData(in);
kmean.setCenterCount(4);
kmean.clustering(1000, 0.000001);
kmean.saveData(out);

return 0;
}

⑤ excel表格中怎样计算某组数据的平均值

假设数据在A列
在B1单元格输入公式
=AVERAGE(OFFSET(A$1:A$3,ROW()*3-3,))

下拉填充即可

⑥ 表格中多个跨行数值且需要添加条件怎么求平均值

SUM(数值的集合) 结果为括号内素所有数值加总
COUNTA(文字区域) 结果为文字单元格个数
AVERAGEIF(条件区间,条件值,求均值区域)
LEFT(一段文本/数字,左数所取文本/数字位数)

有时候工作中会遇到合并单元格的情况,虽然看起来很简洁、漂亮,但如用于计算就很闹心,拖拽向下填充都不好使。因为经常闹心,所以要想办法解决了他。准备了下面几种常用计算的解决方法,表哥已经实践过,用着很爽,再也不闹心了。下面分情况讨论哈!
合并单元格计算,分为两种情况:
一是每个合并单元格包含相同数量的行数;一是合并单元格包含行数数量不一致。
文章将分为这两种情况讨论计算方法。
情况一:每个合并单元格包含相同数量的行数

由于合并单元格包含行数相同,进行汇总计算时,只要计算出第一行后,双击或拖拉向下填充均可。第一行E2/F2/G2分别使用函数SUM(),COUNT(),AVERAGE(),此处无需添加函数组合,直接使用即可。
表哥Tips:
如果习惯使用快捷键,则选定所有填充列,同时按下CTRL+D,即可快速全部填充。
此法用过一次就停不下来了,十分推荐!
情况二:合并单元格包含行数数量不一致

由于包含行数各不相同,若使用上述公式进行计算,必须在每个合并单元格公式中定位其对应的行号。表哥认为这种重复体力劳动不但很无趣,而且越大数据表越费鼠标,按到手痛,最重要的是很有可能多算少算行,影响准确性。
因此,我们需要换个思路,用减法做汇总。
表哥知识点:
合并单元格的定位地址,默认等于合并单元格内的第一行第一列单元格的地址。如E列第一个合并单元格(标红色)地址等于左上角单元格地址,即E2。
利用上述知识点,E、F、G三列的汇总思路为:
(1) E列合并加总:用D列当前行至最后一行的和,减掉E列当前行下一行至最后一行的和。
以合并单元格E2为例,公式为E2=SUM(D2:$D$13)-SUM(E8:$E$13)。
表哥Tips&知识点:
下面的合并单元格计算通过向下填充或拉公式是无效的,因为每个合并单元格所包含的行数不同,注意这里要用CTRL+ENTER填充。先选中准备计算的空白单元格,最后选中单元格E2,使其公式处于编辑状态中(在公示栏看到闪动的光标),这次同时按下CTRL+ENTER完成空白合并单元格的填充。
(2) F列计数加总:用D列当前行至最后一行的个数之和,减掉F列当前行下一行至最后一行的和。
以合并单元格F2为例,公式为F2=COUNTA(D2:$D$13)-SUM(F8:$F$13)填充方法同上(1)
(3) G列以样品编号分类求平均值:在必须保留数据表原格式情况下,利用通配符,改进方法一即可。这种方法利用LEFT&”*”函数作为关键字,进行判断是否属于同一样品编号。
以单元格G2为例,公式为G2=AVERAGEIF($C$2:$C$13,LEFT(C2,4)&"*",$D$2:$D$13) 填充方法同上(1)

阅读全文

与统计大数据取平均值相关的资料

热点内容
static在java 浏览:184
加工中心铣斜边32度怎么编程 浏览:947
网络技术选择 浏览:529
怎么视频去水印APP 浏览:479
win10不自动更新 浏览:234
苹果手机微信视频怎么有杂音 浏览:317
滁州数控编程培训怎么样 浏览:656
微信红包下面有个盾牌 浏览:767
win10智能家居 浏览:620
qq飞车鸡字怎么获得 浏览:618
评论区给一星保护的app是什么 浏览:356
设置怎么没有网络模式 浏览:711
什么app可以借5000 浏览:304
iqoo如何关闭一张卡的数据流量 浏览:212
人物建模教程 浏览:271
有什么ppt免费的网站 浏览:74
声音文件扩展名分别有哪些 浏览:476
复兴号叫外卖用什么App 浏览:478
网上医生app 浏览:307
java创建一个list 浏览:866

友情链接