最近有小伙伴在问我一个数据分析的问题, 做毕设, 实证分析. 不知道改如何处理数据.

看了下设计的量表大致是这样的, 都是 5级的里克特量表, 大致分为两波, X, Y. 小伙伴认为就只有两个变量, 这是从商业理论上来认识的, 但从数据的角度, 却不是的.

X: 一共有22个问题, 也就是22个字段; 里面又是有认为分组的, 三两个字段, 又被认定为一个别名.

Y: 一共有13个问题, 也就是13个字段; 里面有是人为分组, 三两字段啥的, 分为 4组, 分别有别名.

然后不知道该如何分析?

问题

探寻 X 与 Y 的相关关系(线性相关)

其实探讨的时候, 挺不易的, 就很难知道她到底想要分析什么, 需求是什么, 还以为要做什么回归分析, 什么相关分析, 什么统计描述或其他的, 总之, 沟通过程非常漫长. 最后我放弃了, 还是单纯从这个数据级来分析.

本质上, 其实宏观来看, 就是 X 和 Y 的相关性如何嘛, 以及如何影响的. 那这不是求一波, 相关系数嘛. 但这里, X, Y 是多个字段, 是多对多 的关系, 就求不来了. 因此需要引进新的方法.

CCA

于是引入了典型相关分析 (Canonical Correlation Analysis), 用于探索多变量之间的关联关系.

于是这个问题, 就可以初步这样来做.

更正一波,写的有点不对, 不是分别降低到一维度. 而是分别降维后, x 和 y 能进行 配对. 这里 y 有13个嘛, x 有22个, 假设根本不对 y 进行降维, 那最多也只能匹配到 13对. 约束条件就是相关系数最大呀. 这块的数学公式就暂时不写了, 跟 PCA , 因子分析的逻辑是类似的.

发现了一个神器, 在线SPSS, 叫做 SPSSAU, 付费的, 但功能强大, UI 很有感觉, 重点是完全实现 傻瓜式操作. 虽然我已经不再做这块了, 但还是很怀念 SPSS, 比较是我数据分析之路的启蒙软件. 至少是真正用来做数据分析, 做市场研究的.

简单, 托拉拽, 一键输出报告, 包含 假设检验. 探寻数据的应用意义, 而不用太多关注底层的数学公式. 虽然数学公式会更加帮助理解数据集, 这是后话. 我觉得这才是数据分析的意义:

  • 描述性统计分析
  • 关联性统计分析
  • 探索性建模分析

这种基于统计理论的分析框架 + 商业理论, 已早已熟练于心. 虽然现在的不用这类 傻瓜工具了, 现在自己搞编程, 但我感觉企业中的数据分析, 至少我接触的反而更加低级.

  • 写 sql 查询数据 或 手动下载数据
  • 筛选字段, 合并表格
  • 计算业务指标, 几遍的加减乘除, 什么同比环比
  • 大量的分组聚合, 生成报表, 看板

真的是, 从技术层面, 毫无难度. 我很多时间都是干这些活, 相比数据分析,我认为的, 我感觉还真不如几年前用 SPSS 的时光. 起码是真的再利用数据的价值来进行市场研究, 市场分析.

然后会最终得到这样类似的结果 , 和一些假设检验, 因子载荷等的术语, 都蛮简单的. (我没跑, 数据暂不能公开, 找了一张网上的示意图)

这样 CCP 就完成了, 多自变量 和 多因变量的关联分析了.

Next - 回归

继续要探寻, X 和部分 y 的关系. 我的思路, 都既然做相关分析了, 那很自然再拓展到回归分析呀.

合并 y 为 1 列

回归分析的 y 是一个字段, 因此, 可以将 量表中的 小 y 组进行, 合并为一列. 这里, 可以加权 或者 直接平均, 自己能解释清楚就行.

主成分 + 多元回归

有一个 y, 有很多的 x1, x2, x2... 相关分析, 就是要判断, 这些 x1, x2..与 y 是都是分别有线性相关性的(相关系数高); 而 x1, 与 x2, x3.. 之间呢, 彼此相关系数 要低

第二步就是要降维. 为啥必须要降维度呢, 就是怕 X 矩阵, 存在共线, 然后就不能 求 逆了呀.

PCA降维

至于如何降维, 我感觉我自己都说烂了. 也搞好几年了, 就是让特征重新进行线性组合 (改变数据了哦) 为几个较少得到特征, 然后尽可能保留原来更多的信息 (协方差的范数尽可能大)

求解模型参数

方法1 是一步求解, 就用上面的共线图中的矩阵运算即可.

方法2 是用梯度下降法来做, 我用的多, 但这个小伙伴, 没有学过编程, 就还是给推荐, 撒花是点点点算了.

小结

  • 多自变量 和 多因变量 分析可以考虑 典型相关分析 CCA 这种 "降维配对" 的技术
  • 回归分析必须 3步: 先做相关性分析; 再做降维处理; 再训练模型参数;
  • PCA 我感觉非常厉害的. 还有一在线版spssau 的工具体验感很好, 市场研究方面的数据处理, 很适合.

典型相关分析 CCA的更多相关文章

  1. 典型相关分析CCA计算过程

      本文介绍了CCA解决的问题,CCA原理的推导过程,以及对计算结果物理意义的解释.并且通过SPSS和R操作演示了一个关于CCA的例子.数据文件下载参考[8],SPSS输出结果文件下载参考[9],R代 ...

  2. 多视图学习利器----CCA(典型相关分析)及MATLAB实现

    Hello,我是你们人见人爱花见花开的小花.又和大家见面了,今天我们来聊一聊多视图学习利器------CCA. 一 典型相关分析的基本思想 当我们研究两个变量x和y之间的相关关系的时候,相关系数(相关 ...

  3. Jordan Lecture Note-11: 典型相关分析(Canonical Correlation Analysis, CCA).

    典型相关分析 (一)引入 典型相关分析(Canonical Correlation Analysis)是研究两组变量之间相关关系的一种多元统计方法.他能够揭示出两组变量之间的内在联系. 我们知道,在一 ...

  4. Jordan Lecture Note-12: Kernel典型相关分析(Kernel Canonical Correlation Analysis, KCCA).

    Kernel典型相关分析 (一)KCCA 同样,我们可以引入Kernel函数,通过非线性的坐标变换达到之前CCA所寻求的目标.首先,假设映射$\Phi_X: x\rightarrow \Phi_X(x ...

  5. 机器学习: Canonical Correlation Analysis 典型相关分析

    Canonical Correlation Analysis(CCA)典型相关分析也是一种常用的降维算法.我们知道,PCA(Principal Component Analysis) 主分量分析将数据 ...

  6. SPSS数据分析—基于最优尺度变换的典型相关分析

    传统的典型相关分析只能考虑变量之间的线性相关情况,且必须为连续变量,而我们依然可以使用最优尺度变换来拓展其应用范围,使其可以分析非线性相关.数据为分类数据等情况,并且不再仅限于两个变量间的分析, 虽然 ...

  7. SPSS数据分析—典型相关分析

    我们已经知道,两个随机变量间的相关关系可以用简单相关系数表示,一个随机变量和多个随机变量的相关关系可以用复相关系数表示,而如果需要研究多个随机变量和多个随机变量间的相关关系,则需要使用典型相关分析. ...

  8. R语言 典型相关分析

    1.关键点 #典型相关分析##典型相关分析是用于分析两组随机变量之间的相关程度的一种统计方法,它能够有效地揭示两组随机变量之间的相互(线性依赖)关系#例如 研究生入学考试成绩与本科阶段一些主要课程成绩 ...

  9. CCA(典型相关分析)

    https://www.cnblogs.com/pinard/p/6288716.html

  10. 经典相关分析,典型关分析, CCA,Canonical Correlation Analysis,多元变量分析,线性组合,相关系数最大化

    1.从概率论中相关系数推广而来 在概率论中,研究两个变量之间的线性相关情况时,提出了 相关系数 这个概念.做一下推广,如果研究一个变量和多个随机变量之间的线性相关关系时,提出了 全相关系数(或者复相关 ...

随机推荐

  1. 科研界DeepSeek+AI应用协作攻略来了!

    自从DeepSeek爆火 AI应用届开启"精英集结" 与DeepSeek携手撑起国产AI一片天 比如,DeepSeek+Midjourney 成为设计师的好帮手 DeepSeek+ ...

  2. 泰山派设备控制(RGB)

    泰山派设备系统控制(RGB) 1.进入设备系统 cd /sys/class 2.进入RGB灯子系统 cd /sys/class/leds/ 罗列可操作的设备,可以看到三个设备,"rgb-le ...

  3. Bean的原始版本与最终版本不一致?记一次Spring IOC探索之旅

    前言 在这个信息技术发展迅速的时代,万万没想到,Spring自2003年发展至今,仍是技术选型中的首选,某些项目甚至有Spring全家桶的情况. 在Java开发者面试当中,Spring的原理也常被面试 ...

  4. 【Unity】光照解决方案笔记

    [Unity]光照解决方案笔记 https://docs.unity.cn/cn/2022.3/Manual/BestPracticeLightingPipelines.html 确定对象显示效果的三 ...

  5. DW - 问题

    数据库三范式 1NF(First Normal Form):一个关系模式符合 1NF 的定义,则该关系模式是简单的.简单的意思就是不存在从属或重复的属性,即每个属性都是原子性的. 2NF(Second ...

  6. nginx 根据 URL 参数引入不同的文件

    同步发布:https://blog.jijian.link/2020-06-30/nginx-import-file/ 编程世界中各种奇奇怪怪的需求都有,本次遇到一个需求:根据URL参数判断,包含 x ...

  7. [tldr] 如何给自己的程序编写一个systemd服务

    参考Systemd 入门教程:实战篇 配置文件 systemd使用配置文件作为程序服务启动的方式,分为可以自启动的和不能自启动的 就是enable和start的命令的区别 分为/etc/systemd ...

  8. rust学习笔记(3)

    变量 变量默认是不可变的 不能使用没有初始化的变量 作用域 变量离开作用域之后会直接释放, 无法再次使用; 在内部代码块中定义的变量会导致外部的变量被遮蔽 类型转换 部分类型可以隐式转换, 部分类型需 ...

  9. Golang 入门 : 常量

    常量 相对于变量而言,常量是在程序使用过程中,不会改变的数据.有些地方你需要将定义好的常量重复使用,代码中你不允许它的值改变.例如 圆周率 在程序执行过程中不会改变. 常量的声明 const Pi f ...

  10. MYSQL架构介绍

    专栏持续更新中- 本专栏针对的是掌握MySQL基本操作后想要对其有深入了解并且有高性能追求的读者. 第一篇文章主要是对MySQL架构的主要概括,让读者脑海中有个对MySQL大体轮廓,很多地方没有展开细 ...