精华内容
下载资源
问答
  • 多维数据的基本统计分析与图示
    2021-09-13 10:56:15

    实验名称:多维数据的基本统计分析与图示

    实验目的与要求:1. 熟悉R软件界面及数据的R语言表示。

                    2. 对多维数据作基本统计分析及直观表示。

                           3. 第二章练习题2、3; 第三章练习题2;

           实验总结

           实验步骤与结果:   

    第二章练习题2:进行基本统计分析

    代码:

    ###第二章第二题

    ##进行基本统计分析

    T2.2=read.csv("E:/T2.2.csv",header=T)  #数据的导入

    head(T2.2)

    summary(T2.2)

    A1=table(是否抽烟);A1

    barplot(A1)

    B1=table(每天学习时间);B1

    barplot(B1)

    table(是否抽烟,每天学习时间)

    barplot(table(每天学习时间,是否抽烟),beside=T,col=1:2)

    barplot(table(是否抽烟,每天学习时间),beside=T,col=1:6)

    第二章练习题3:试按组距为300编制频数表,计算频数、频率和累积频率,并绘制直方图。

    (1)写出R语言程序。

    (2)用R语言进行基本统计分析。

    (3)用R语言作正态概率图并分析之。

    代码:

    ###第二章第三题

    ##试按组距为300编制频数表,计算频数、频率和累积频率,并绘制直方图

    T2.3=read.csv("E:/T2.3.csv",header=T)  #数据的导入

    min(T2.3)    #最低工资

    max(T2.3)    #最高工资

    A2=hist(T2.3$X,breaks = seq(900,3000,300))    #以组距为300话=画直方图

    names(A2)

    data.frame('组中值'=A2$mids,'频数'=A2$counts,'频率'=A2$density*300,'累计频率'=cumsum(A2$density*300))

    ##进行基本统计分析

    summary(T2.3)

    ##用R语言作正态概率图

    qqnorm(T2.3$X)

    qqline(T2.3$X)

    第三章练习题2:按本章讲的多元图示方法对该资料进行直观分析

    代码:

    ###第三章第二题

    ##按本章讲的多元图示方法对该资料进行直观分析

    T3.2=read.csv("E:/T3.2.csv",header=T)  #数据的导入

    summary(T3.2)

    #均值条图

    P1=rowMeans(T3.2[,2:5]);P1

    barplot(P1,las=3)

    P2=colMeans(T3.2[,2:5]);P2

    #箱尾图

    boxplot(T3.2[,2:5])

    boxplot(T3.2[,2:5],horizontal=T)

    #脸谱图

    library(aplpack)

    faces(T3.2[,2:5],face.type=2)  #第一列文字,不能直接处理

    plot(T3.2[,2:3],bty="n")

    a<-faces(T3.2[,2:4]);a

    #星象图

    library(mvst)

    stars(T3.2,full=F,key.loc=c(13,1.5),draw.segments=T)

    更多相关内容
  • 基于二阶统计特性的主分量分析(PCA)和基于高阶统计特性的独立分量分析(ICA)是两种非常典型的多维统计分析方法。本文对PCA和ICA基本原理进行了简单介绍,并结合脑电消噪问题,对两种方法的性能和特点进行了比较。实验...
  • 多维数据统计分析2

    2017-07-21 11:54:21
    多维数据分析是以数据库或数据仓库为基础的,其最终数据来源与OLTP一样均来自底层的数据库系统,但两者面对的用户不同,数据的特点与处理也不同。 多维数据分析与OLTP是两类不同的应用,OLTP面对的是操作人员和低层...
  • 多维统计特征分析的芯片硬件木马检测方法.pdf
  • Hive多维统计分析案例实战

    千次阅读 2020-12-06 21:45:22
    3 业务分析 3.1 统计视频观看数Top10 3.2 统计视频类别热度Top10 3.3 统计出视频观看数最高的20个视频的所属类别以及类别包含Top20视频的个数 3.4 统计视频观看数Top50所关联视频的所属类别排序 3.5 统计每个...

    目录

    0 需求描述

    1 数据结构

    2 准备工作

    2.1 准备表

    2.2 安装TEZ计算引擎

    3 业务分析

    3.1 统计视频观看数Top10

    3.2 统计视频类别热度Top10

    3.3 统计出视频观看数最高的20个视频的所属类别以及类别包含Top20视频的个数

    3.4 统计视频观看数Top50所关联视频的所属类别排序

    3.5 统计每个类别中的视频热度Top10,以Music为例

    3.6 统计每个类别视频观看数Top10

    3.7 统计上传视频最多的用户Top10以及他们上传的视频观看次数在前20的视频


    0 需求描述

    统计爱奇艺视频网站的常规指标,各种TopN指标:(多维分析

    -- 统计视频观看数Top10

    -- 统计视频类别热度Top10

    -- 统计出视频观看数最高的20个视频的所属类别以及类别包含Top20视频的个数

    -- 统计视频观看数Top50所关联视频的所属类别排序

    -- 统计每个类别中的视频热度Top10,以Music为例

    -- 统计每个类别视频观看数Top10

    -- 统计上传视频最多的用户Top10以及他们上传的视频观看次数在前20的视频

    1 数据结构

    (1)视频表

    视频表

    字段

    备注

    详细描述

    videoId

    视频唯一idString

    11位字符串

    uploader

    视频上传者(String

    上传视频的用户名String

    age

    视频年龄(int

    视频在平台上的整数天

    category

    视频类别(Array<String>

    上传视频指定的视频分类

    length

    视频长度(Int

    整形数字标识的视频长度

    views

    观看次数(Int

    视频被浏览的次数

    rate

    视频评分(Double

    满分5

    Ratings

    流量(Int

    视频的流量,整型数字

    conments

    评论数(Int

    一个视频的整数评论数

    relatedId

    相关视频idArray<String>

    相关视频的id,最多20

    (2)用户表

    用户表

    字段

    备注

    字段类型

    uploader

    上传者用户名

    string

    videos

    上传视频数

    int

    friends

    朋友数量

    int

    2 准备工作

    2.1 准备表

    (1)需要准备的表

    创建原始数据表:gulivideo_ori,gulivideo_user_ori,

    创建最终表:gulivideo_orc,gulivideo_user_orc

    (2创建原始数据表


        1)gulivideo_ori

    
    create table gulivideo_ori(
    
        videoId string,
    
        uploader string,
    
        age int,
    
        category array<string>,
    
        length int,
    
        views int,
    
        rate float,
    
        ratings int,
    
        comments int,
    
        relatedId array<string>)
    
    row format delimited fields terminated by "\t"
    
    collection items terminated by "&"
    
    stored as textfile;

    2)创建原始数据表: gulivideo_user_ori

    create table gulivideo_user_ori(
    
        uploader string,
    
        videos int,
    
        friends int)
    
    row format delimited
    
    fields terminated by "\t"
    
    stored as textfile;

    (3)创建orc存储格式带snappy压缩的表:

    (1)gulivideo_orc

    create table gulivideo_orc(
    
        videoId string,
    
        uploader string,
    
        age int,
    
        category array<string>,
    
        length int,
    
        views int,
    
        rate float,
    
        ratings int,
    
        comments int,
    
        relatedId array<string>)
    
    stored as orc
    
    tblproperties("orc.compress"="SNAPPY");

    (2)gulivideo_user_orc

    create table gulivideo_user_orc(
    
        uploader string,
    
        videos int,
    
        friends int)
    
    row format delimited
    
    fields terminated by "\t"
    
    stored as orc
    
    tblproperties("orc.compress"="SNAPPY");

    (3)向ori表插入数据

    load data local inpath "/opt/module/data/video" into table gulivideo_ori;
    
    load data local inpath "/opt/module/user" into table gulivideo_user_ori;

    (4)向orc表插入数据

    insert into table gulivideo_orc select * from gulivideo_ori;
    
    insert into table gulivideo_user_orc select * from gulivideo_user_ori;

    2.2 安装TEZ计算引擎

    Tez是一个Hive的运行引擎,性能优于MR。为什么优于MR呢?看下。

    https://images2015.cnblogs.com/blog/16956/201603/16956-20160327150439042-1656855042.jpg

    用Hive直接编写MR程序,假设有四个有依赖关系的MR作业,上图中,绿色是Reduce Task,云状表示写屏蔽,需要将中间结果持久化写到HDFS。

    Tez可以将多个有依赖的作业转换为一个作业,这样只需写一次HDFS,且中间节点较少,从而大大提升作业的计算性能。

    1)将tez安装包拷贝到集群,并解压tar

    [root@hadoop102 software]$ mkdir /opt/module/tez
    
    [root@hadoop102 software]$ tar -zxvf /opt/software/tez-0.10.1-SNAPSHOT-minimal.tar.gz -C /opt/module/tez

    2)上传tez依赖到HDFS

    [root@hadoop102 software]$ hadoop fs -mkdir /tez
    
    [root@hadoop102 software]$ hadoop fs -put /opt/software/tez-0.10.1-SNAPSHOT.tar.gz /tez

    3新建tez-site.xml

    [root@hadoop102 software]$ vim $HADOOP_HOME/etc/hadoop/tez-site.xml

    添加如下内容:

    <?xml version="1.0" encoding="UTF-8"?>
    
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    
    <configuration>
    
    <property>
    
        <name>tez.lib.uris</name>
    
        <value>${fs.defaultFS}/tez/tez-0.10.1-SNAPSHOT.tar.gz</value>
    
    </property>
    
    <property>
    
         <name>tez.use.cluster.hadoop-libs</name>
    
         <value>true</value>
    
    </property>
    
    <property>
    
         <name>tez.am.resource.memory.mb</name>
    
         <value>1024</value>
    
    </property>
    
    <property>
    
         <name>tez.am.resource.cpu.vcores</name>
    
         <value>1</value>
    
    </property>
    
    <property>
    
         <name>tez.container.max.java.heap.fraction</name>
    
         <value>0.4</value>
    
    </property>
    
    <property>
    
         <name>tez.task.resource.memory.mb</name>
    
         <value>1024</value>
    
    </property>
    
    <property>
    
         <name>tez.task.resource.cpu.vcores</name>
    
         <value>1</value>
    
    </property>
    
    </configuration>

    4)修改Hadoop环境变量

     [root@hadoop102 software]$ vim $HADOOP_HOME/etc/hadoop/shellprofile.d/tez.sh

    添加Tez的Jar包相关信息

    hadoop_add_profile tez
    
    function _tez_hadoop_classpath
    
    {
    
        hadoop_add_classpath "$HADOOP_HOME/etc/hadoop" after
    
        hadoop_add_classpath "/opt/module/tez/*" after
    
        hadoop_add_classpath "/opt/module/tez/lib/*" after
    
    }

    5)修改Hive的计算引擎

    [root@hadoop102 software]$ vim $HIVE_HOME/conf/hive-site.xml

    添加

    <property>
    
        <name>hive.execution.engine</name>
    
        <value>tez</value>
    
    </property>
    
    <property>
    
        <name>hive.tez.container.size</name>
    
        <value>1024</value>
    
    </property>

    6)解决日志Jar包冲突

    [root@hadoop102 software]$ rm /opt/module/tez/lib/slf4j-log4j12-1.7.10.jar

    3 业务分析

    3.1 统计视频观看数Top10

    思路:使用order by按照views字段做一个全局排序即可,同时我们设置只显示前10条。

    最终代码:

    SELECT
    
         videoId,
    
         views
    
    FROM
    
         gulivideo_orc
    
    ORDER BY
    
         views DESC
    
    LIMIT 10;

    3.2 统计视频类别热度Top10

    思路:

    • (1)即统计每个类别有多少个视频,显示出包含视频最多的前10个类别。
    • (2)我们需要按照类别group by聚合,然后count组内的videoId个数即可。
    • (3)因为当前表结构为:一个视频对应一个或多个类别。所以如果要group by类别,需要先将类别进行列转行(展开),然后再进行count即可。
    • (4)最后按照热度排序,显示前10条。

    最终代码:

    SELECT
    
        t1.category_name ,
    
        COUNT(t1.videoId) hot
    
    FROM
    
    (
    
    SELECT
    
        videoId,
    
        category_name
    
    FROM
    
        gulivideo_orc
    
    lateral VIEW explode(category) gulivideo_orc_tmp AS category_name
    
    ) t1
    
    GROUP BY
    
        t1.category_name
    
    ORDER BY
    
        hot
    
    DESC
    
    LIMIT 10

    3.3 统计出视频观看数最高的20个视频的所属类别以及类别包含Top20视频的个数

    思路:

    • (1)先找到观看数最高的20个视频所属条目的所有信息,降序排列
    • (2)把这20条信息中的category分裂出来(列转行)
    • (3)最后查询视频分类名称和该分类下有多少个Top20的视频

    最终代码:

    SELECT
    
        t2.category_name,
    
        COUNT(t2.videoId) video_sum
    
    FROM
    
    (
    
    SELECT
    
        t1.videoId,
    
        category_name
    
    FROM
    
    (
    
    SELECT
    
        videoId,
    
        views ,
    
        category
    
    FROM
    
        gulivideo_orc
    
    ORDER BY
    
        views
    
    DESC
    
    LIMIT 20
    
    ) t1
    
    lateral VIEW explode(t1.category) t1_tmp AS category_name
    
    ) t2
    
    GROUP BY t2.category_name

    3.4 统计视频观看数Top50所关联视频的所属类别排序

    代码:

    SELECT
    
       t6.category_name,
    
       t6.video_sum,
    
       rank() over(ORDER BY t6.video_sum DESC ) rk
    
    FROM
    
    (
    
    SELECT
    
       t5.category_name,
    
       COUNT(t5.relatedid_id) video_sum
    
    FROM
    
    (
    
    SELECT
    
      t4.relatedid_id,
    
      category_name
    
    FROM
    
    (
    
    SELECT
    
      t2.relatedid_id ,
    
      t3.category
    
    FROM
    
    (
    
    SELECT
    
       relatedid_id
    
    FROM
    
    (
    
    SELECT
    
       videoId,
    
       views,
    
       relatedid
    
    FROM
    
       gulivideo_orc
    
    ORDER BY
    
       views
    
    DESC
    
    LIMIT 50
    
    )t1
    
    lateral VIEW explode(t1.relatedid) t1_tmp AS relatedid_id
    
    )t2
    
    JOIN
    
       gulivideo_orc t3
    
    ON
    
     t2.relatedid_id = t3.videoId
    
    ) t4
    
    lateral VIEW explode(t4.category) t4_tmp AS category_name
    
    ) t5
    
    GROUP BY
    
      t5.category_name
    
    ORDER BY
    
      video_sum
    
    DESC
    
    ) t6

    3.5 统计每个类别中的视频热度Top10,以Music为例

    思路:

    • (1)要想统计Music类别中的视频热度Top10,需要先找到Music类别,那么就需要将category展开,所以可以创建一张表用于存放categoryId展开的数据。
    • (2)向category展开的表中插入数据。
    • (3)统计对应类别(Music)中的视频热度。

    统计Music类别的Top10(也可以统计其他)

    SELECT
    
        t1.videoId,
    
        t1.views,
    
        t1.category_name
    
    FROM
    
    (
    
    SELECT
    
        videoId,
    
        views,
    
        category_name
    
    FROM gulivideo_orc
    
    lateral VIEW explode(category) gulivideo_orc_tmp AS category_name
    
    )t1   
    
    WHERE
    
        t1.category_name = "Music"
    
    ORDER BY
    
        t1.views
    
    DESC
    
    LIMIT 10

    3.6 统计每个类别视频观看数Top10

    最终代码:

    SELECT
    
      t2.videoId,
    
      t2.views,
    
      t2.category_name,
    
      t2.rk
    
    FROM
    
    (
    
    SELECT
    
       t1.videoId,
    
       t1.views,
    
       t1.category_name,
    
       rank() over(PARTITION BY t1.category_name ORDER BY t1.views DESC ) rk
    
    FROM   
    
    (
    
    SELECT
    
        videoId,
    
        views,
    
        category_name
    
    FROM gulivideo_orc
    
    lateral VIEW explode(category) gulivideo_orc_tmp AS category_name
    
    )t1
    
    )t2
    
    WHERE t2.rk <=10

    3.7 统计上传视频最多的用户Top10以及他们上传的视频观看次数在前20的视频

    思路:

    • (1)求出上传视频最多的10个用户
    • (2)关联gulivideo_orc表,求出这10个用户上传的所有的视频,按照观看数取前20

    最终代码:

    SELECT
    
       t2.videoId,
    
       t2.views,
    
       t2.uploader
    
    FROM
    
    (
    
    SELECT
    
       uploader,
    
       videos
    
    FROM gulivideo_user_orc
    
    ORDER BY
    
       videos
    
    DESC
    
    LIMIT 10   
    
    ) t1
    
    JOIN gulivideo_orc t2
    
    ON t1.uploader = t2.uploader
    
    ORDER BY
    
      t2.views
    
    DESC
    
    

    欢迎关注石榴姐公众号"我的SQL呀",关注我不迷路

     

    展开全文
  • 多元统计分析及R语言建模 第12章 多维标度法MDS及R使用- -多元统计分析及R语言建模12 多维标度法MDS及R使用多元统计分析及R语言建模第12章 多维标度法MDS及R使用主要内容 多维标度法的基本理论方法 多维标度的古典解...
  • 多元统计分析(11个常见的多变量分析方法)在社会科学研究中,主要的多变量分析方法包括多变量方差分析(Multivariate analysis of variance,MANOVA)、主成分分析(Principal component analysis)、因子分析(Factor ...

    多元统计分析(11个常见的多变量分析方法)在社会科学研究中,主要的多变量分析方法包括多变量方差分析(Multivariate analysis of variance,MANOVA)、主成分分析(Principal component analysis)、因子分析(Factor analysis)、典型相关(Canonical correlation analysis)、聚类分析(Cluster analysis)、判别分析(Discriminant analysis)、多维量表分析(Multidimensional scaling),以及近来颇受瞩目的验证性因子分析(Confirmatory factor analysis )或线性结构模型(LISREL)与逻辑斯蒂回归分析等,以下简单说明这些方法的观念和适用时机。

    01、多变量方差分析

    MANOVA适用于同时探讨一个或多个自变量与两个以上因变量间因果关系的统计方法,依照研究者所操作自变量的个数,可以分为单因素(一个自变量)或多因素(两个以上自变量)MANOVA。进行多变量方差分析时,自变量必须是离散的定类或定序变量,而因变量则必须是定距以上层次的变量。

    02、主成分分析

    主成分分析的主要功能在分析多个变量间的相关,以建构变量间的总体性指标(overall indicators)。当研究者测量一群彼此间具有高度相关的变量,则在进行显著性检验钱,为避免变量数过多,造成解释上的复杂与困扰,常会先进行主成分分析,在尽量不丧失原有信息的前提下,抽取少数几个主成分,作为代表原来变量的总体性指标,达到资料缩减(data reduction)的功能。进行主成分分析时,并无自变量和因变量的区别,但是所有的变量都必须是定距以上层次变量。

    03、因子分析

    因子分析与主成分分析常被研究者混用,因为二者的功能都是通过对变量间的相关分析,以达到简化数据功能。但不同的是,主成分分析是在找出变量间最佳线性组合(linear combination)的主成分,以说明变量间最多的变异量;至于因子分析,则在于找出变量间共同的潜在结构(latent structure)或因子,以估计每一个变量在各因子上的负荷量(loading)。进行因子分析时,并无自变量和因变量的区分,但是所有变量都必须是定距以上层次变量。

    04、典型相关

    典型相关可视为积差相关或多元回归分析的扩展,主要功能在分析两个变量间的相关。进行多元回归分析的目的,是在分析一个或多个自变量与一个因变量间的关系,而典型相关中因变量也可以是多个;也就是说,典型相关的目的在于通过计算得到两个变量线性组合的加权系数。以使(maximum)两个变量间的相关达到最大化。进行典型相关时,并无自变量和因变量的区分,但是所有变量都必须是定距以上层次变量。

    05、聚类分析

    聚类分析的主要功能在进行分类(classification),当研究者有观测值时,常会根据观测值的相似性或差异性进行分类,以形成几个性质不同的类别,简化解释的工作。也就是说,聚类分析根据对变量进行测量的观察值进行分类,以达到组内同质、组间异值的目的。其次,聚类分析完成后,通常可以进行判别分析,以识别分类的效度。当然,在某些时候也可以对变量进行分类(此功能类似因子分析,因此多采用因子分析解决问题)。进行聚类分析时,并无自变量和因变量的区分,但是所有变量都必须是定距以上层次变量。

    06、判别分析

    判别分析是多变量分析中应用相当广泛的统计方法,它可以用来对样本进行分类的工作;也可以用来了解不同类别样本在某些变量上的差异情形;同时也可以根据不同类别的样本在某些变量的实际表现,用来预测新的样本属于某一类别的概率。因此,在行为科学中,常见的研究者单独使用判别分析,建立判别函数(discriminant function),以对新样本进行预测;或是多变量方差分析的检验值达到显著性水平后,比较不同组别样本在因变量平均数的差异情形;或是聚类分析后,检验聚类分析的正确性。进行判别分析时,自变量是定距以上层次变量,至于因变量通常是离散变量。

    07、多维量表分析

    多维量表分析基本上也是一种分类的统计方法,他在市场上普遍被应用。当研究者想要解释一群受试者(例如消费者)对一组客体(例如商品)在某些变量上相似性的测量中所包含的信息,此时多维量表分析就是一个相当适用的方法。研究者只要将这一组客体在变量上的测量值转化成多维度的几何表征,就能够将这些客体有效地显示在这个几何空间中,达到分类的目的,同时也可以进一步解释这些几何表征所代表的潜在结构或意义。进行多维量表分析时,并无自变量和因变量的区分,同时变量可以是等距以上变量,也可以是定类或定序变量。

    08、线性结构方程

    线性结构方程是一个相当具有变通与弹性的统计方法,随着研究者对变量间关系界定的差异,LISREL的常见名称包括协方差结构分析,潜变量分析、线性结构模型或验证性因子分析。LISREL可视为多元回归分析与因子分析两个方法论的整合模型,让研究者可以探讨变量间的线性关系(回归分析),并对可测量显变量与不可测量的潜变量见(因子分析)的因果模型作假设检验。

    09、逻辑斯蒂回归分析

    逻辑斯蒂回归可视为传统多元回归分析的一个特列。它和多元回归分析一样,都具有解释自变量与因变量之间的关系,并可进行预测。所不同的是在进行多元回归分析时,包括自变量与因变量都必须是定距以上层次变量;但在进行逻辑斯蒂回归分析时,自变量仍是定距以上层次变量,因变量则是二分的定类变量或多分定类变量或定序变量。

    10、对数线性方程

    在基本统计学中,当研究者面对探讨两个定类或定序变量间关系的研究问题时,都是以卡方检验来进行假设检验。当问题的性质是探讨两个定类变量间是否独立或是关联强度时,是以卡方独立性检验来进行假设检验。进行卡方独立性检验时,研究者必须将样本在两个定类变量上的反应,建立二维列联表(contingency table),以进一步根据列联表中各单元格(cell)的次数反应,进行显著性检验。但当研究者面对三个或三个以上的定类变量时,所建立的多元列联表间变量关联的分析,卡方独立性检验将无法解决这样的问题,此时适合的方法就是对数线性模型。利用对数线性模型来解决多元列联表的问题的目的,主要就在于探讨构成列联表的多个定类变量间的关系,进而在精简原则下构建拟合的解释模型,并根据所建立的模型估计单元格参数值,以了解各变量效果对单元格次数的影响。

    11、Logit对数线性模型

    在对数线性模型中,多个定类变量间是互为因果的关系(即相关关系),并无自变量与因变量的区分,研究目的在于探讨变量间的关联强度和性质。但有时研究者会面临变量间有自变量和因变量的区分的情境。在基本统计学中,当研究者面对的问题性质是两个定类变量间有自变量和因变量的区别,目的在于探讨两个变量间的因果关系时,多是以卡方齐性检验来进行假设检验。但自变量个数在两个以上时,卡方齐性检验就不再适用,而必须改用logit对数线性模型方法来对数据进行分析。Logit对数线性模型的功能与多元回归分析相当类似,都可以用来探讨与解释因变量与自变量间的关系,但不同的是,多元回归分析的变量都是定距以上层次变量,通常以最小二乘法进行模型估计与检验;logit对数线性模型的变量都是定类变量,通常以最大似然估计法进行模型估计与检验。

    展开全文
  • SQL SERVER 统计(2)——CUBE多维统计

    千次阅读 2018-07-24 11:06:19
    上一篇博客中介绍了CUBE的基本用法,这次介绍一下CUBE的多维统计用法,测试数据: --测试数据 if not object_id(N'Tempdb..#T') is null drop table #T Go Create table #T([Item] nvarchar(22),[Color] nvarchar...

           上一篇博客中介绍了CUBE的基本用法,这次介绍一下CUBE的多维统计用法,测试数据:

    --测试数据
    if not object_id(N'Tempdb..#T') is null
    	drop table #T
    Go
    Create table #T([Item] nvarchar(22),[Color] nvarchar(22),[Quantity] int)
    Insert #T
    select N'桌子',N'白色',1 union all
    select N'桌子',N'红色',2 union all
    select N'椅子',N'白色',3 union all
    select N'椅子',N'红色',4
    Go
    --测试数据结束

           这次统计想从类型和颜色两个方面统计,并形成小计,我们可以利用CUBE来实现:

    SELECT
        CASE
            WHEN GROUPING(Item) = 1
                THEN '类型小计'
            ELSE
                Item
        END           Item,
        CASE
            WHEN GROUPING(Color) = 1
                THEN '颜色小计'
            ELSE
                Color
        END           Color,
        SUM(Quantity) AS Quantity
    FROM
        #T
    GROUP BY
        Color,
        Item WITH CUBE;

           结果:

           这个统计结果和GROUP BY 后边的字段顺序有很大关系,上边那个是按照Coloe、Item的顺序处理的,我们再看一下按照Item、Color的方式:

    SELECT
        CASE
            WHEN GROUPING(Item) = 1
                THEN '类型小计'
            ELSE
                Item
        END           Item,
        CASE
            WHEN GROUPING(Color) = 1
                THEN '颜色小计'
            ELSE
                Color
        END           Color,
        SUM(Quantity) AS Quantity
    FROM
        #T
    GROUP BY
        Item,
        Color WITH CUBE;

           结果:

           其中的区别,从结果上看更加明显。

    展开全文
  • 2.1.2 多维样本数据的统计量 协方差矩阵与量纲有关,相关系数矩阵R以及Rc矩阵与量纲无关。 协方差矩阵:S=cov(X); 相关系数矩阵:R=corr(X); X的标准化矩阵命令:Z=zecore(X); ...
  • 算法动态维护基窗口的统计量用于多维相关性分析,时空复杂度大为减少,并且可根据多用户并发请求获取多个窗口范围的相关性,较灵活,运算结果精确.理论分析和实验结果表明算法在基窗口越大,相关性查询窗口越大,数据流条...
  • 文献题录信息统计分析工具(Statistical Analysis Tool for Informetrics, SATI),旨在通过对期刊全文数据库题录信息的字段抽取、频次统计和共现矩阵构建,利用一般计量分析、共现分析、聚类分析、多维尺度分析、社会...
  • Hive中的多维分析函数

    千次阅读 多人点赞 2021-08-16 23:27:00
    但是当我们一张表的维度信息特别多,并且需要各种维度组合的统计分析结果时就很不方便。比如一张表有5个维度,所有的维度组合是2的5次方也就是32种,那也就意味着我们需要写32个查询的HQL解决我们的需求。同时不方便...
  • 一个合格的多维分析工具具有完整的OLAP分析功能,像Smartbi,不仅具有同类产品中典型的数据多维交叉展现分析、钻取分析、维度旋转、数据切片、数据过滤、统计图展示功能,而且还具有非常特色的层级设置、Flash打印等...
  • Excel在统计中的应用与数据统计分析.pdf
  • 多维统计一般分两种,我们看看 Hive 中如何解决: 1、同属性的多维组合统计 (1)问题: 有如下数据,字段内容分别为:url, catePath0, catePath1, catePath2, unitparams ...
  • 多维数据集开发入门

    2021-02-26 19:17:52
    具体来说,您观察了一个示例,了解了如何将流量统计数据组织为多维数据集,而该多维数据集的边缘包括...上学时,我们知道,尽管大多数数学题都有清晰明了的公式,但我们仍须用未知数x来列方程,有时还要用x、y甚至更...
  • 主要内容包括多元正态分布、均值向量和协方差阵的检验、聚类分析、判别分析、主成分分析、因子分析、对应分析、典型相关分析等常见的主流方法,还参考国内外大量文献系统介绍了近年来在市场研究、顾客满意度研究、...
  • 统计分析matlab代码关于多维(离散、非参数)拟合优度检验 关于MINEN测试 这提到了ndtest 。 它是 Matlab minentest函数从 . 基于与统计能量的类比,实现 Aslan & Zech 和 Szekely & Rizzo 的检验,当两个样本从...
  •  本书为多元统计分析领域内的经典著作,对社会科学和自然科学的许多学科中常要运用多元统计方法来分析数据的研究者是一本很好的专业参考书,同时也可以作为高等院校研究生学习应用统计类课程的教学参考书。...
  • 多维数据可视化方法 2017-09-21 17:12 来源:炼数成金订阅号 ...
  • 多维偏好分析

    千次阅读 2017-03-04 23:55:00
    本笔记源于张文彤老师《SPSS统计分析高级教程》的学习总结。  多维偏好分析理论及应用:  多维偏好分析也称为“分类数据的主成分分析”,其分析的原理 就是最优尺度变换和主成分分析思想的结合,实质上属于因子...
  • 同时将多个多维分布可视化为平面投影矩阵,并提供进一步交互式分析它们的方法。 支持大数据集(使用 200 万个 4D 数据点测试)。 plot_feature_matrix 是统计建模和分类算法开发的重要工具。 给定 N 维数据点,plot_...
  • OLAP(On-Line Analytical Processing)联机分析处理,1993 年由关系型数据库之父埃德加·科德(Edgar Frank Codd)提出,其中主要为多维分析多维分析常见操作 下钻 从高层次想低层次明细数据穿透。例如“省”...
  • 多维数据透视分析

    2021-04-25 17:12:25
     透视分析(Transparency analysis)可以快速合并、旋转、切片、切块、钻取比较大量的数据和显示明细数据的交互式报表分析的多维数据分析方法。 2.多维数据分析方法分析方法OLAP(Online Analysis Processing),...
  • 单变量 因变量 连续变量 有序分类变量 无序分类变量 二分类变量 单自变量 ...相关分析 回归分析 ...单因素方差分析,结果解释时利用有序信息 秩相关分析、CMH x2 可将自/因变量交换后分析 可将自/因变
  • 内容包括高阶统计量、非参数化高阶谱分析、因果和非因果非最小相位系统的辨识、自适应估计和滤波、信号重构、信号检测、谐波恢复、多元时间序列分析、时变非高斯信号的时频分析、阵列处理、循环平稳时间序列分析以及...
  • SPSS(十四)SPSS之多维尺度分析(图文+数据集)

    万次阅读 多人点赞 2019-06-07 16:32:32
    多维尺度(Multidimensional scaling,缩写MDS,又译“多维标度”)也称作“相似度结构分析”(Similarity structure analysis),属于多重变量分析方法之一,是社会学、数量心理学、市场营销等统计实证分析的常用...
  • 1.多元数据的数学表示 2.多元数据的直观分析:通过图示的方法显示数据,即是多元数据的可视化。...6.判别分析:传统的多元统计分析方法。对所研究的对象进行判别分类。要求事先归类,对新的对象判断是哪一类……
  • 多维尺度分析之下不同模型的比较

    千次阅读 2017-03-16 23:07:36
    多维尺度分析是解决调查对象指标数量不明确或指标本身含义模糊的一种统计分析方法,其特点可以通过可视化的途径使一系列复杂的概念之间的相似程度得以展现出来以便进行分析。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,361
精华内容 14,144
关键字:

多维统计分析方法

友情链接: java_houghDemo.rar