在数据分析过程中,有时候我们经常需要将多列指标合并为一列,比如将一个100人5个观察时间点生成的100行5列数据表,转换成500行1列的数据表,从而满足作图、分析的进一步需求。那么,在JMP中如何快速实现呢?今天这篇文章我们将介绍数据转换的神器之——“堆叠”,帮助你快速搞定数据的转换。

为了帮助更多的临床医师学习如何运用JMP高效地开展数据分析,提高日常工作和发表论文的效率,2020年8月起,JMP资深用户、JMP特约专栏作者、资深统计学家冯国双博士及其团队将在JMP数据分析平台为大家分享一系列统计及数据分析、JMP实战操作、JMP分析报表解读等干货内容,每期一个经典话题,帮助大家掌握一个新技能。值得注意的是,这些话题并非仅针对临床医师,对所有运用JMP软件开展数据分析的小伙伴都适用。本文为此系列文章的第五期。

在数据分析时中,我们经常会遇到这种情形:一个人同时有多个主要分析指标(如随访数据中的多个时间点数据),在数据录入时,通常是将其分别录入在不同列(如5个时间点数据,分5列录入)。这种录入虽然看起来直观,但在数据分析时,有时却需要将这几列指标放置在1列中(如将5列指标放在1列中,同时新产生1列标识5个时间点)。

很多人在这时就有点犯愁,如果是5列还好,逐个复制也花费不了多少时间。但如果是20列甚至更多的列呢?且不说费时费力,逐个复制粘贴也容易发生错误。今天我们请出来的“堆叠”,就是专为这种需求而存在的。它可以实现快速将多列合并为1列,同时新增一个标识变量,以显示不同指标。

下面我们就用JMP自带的示例数据来演示一下如何实现数据的堆叠。

JMP软件内置了很多示例数据,可在最上方的菜单栏帮助→样本数据库中看到(图1),此外,打开帮助→JMP文档库,你就可以看到目前最全最详细、长达六千余页的JMP帮助手册,样本数据库均为里面的教学演示服务。

图1 JMP帮助文档及示例数据

这次我们作为讲解示例的是样本数据库中的Blood Pressure.jmp数据文件。数据的整体情况如图2所示。

图2 示例数据

20个被测者分为四组,变量BP 8M的含义是周一的八点血压测量值。所以该数据记录的是每个被测者分别于周一、周三和周五每日三个不同时间点的血压测量值。没错,这是标准的重复测量数据,临床上有很多医生收集的数据都是这样的格式。

01 多列指标堆叠为一列指标

首先,想象一下这样的情境,得到数据之后,你想比较一下四组被测者的血压测量值是否有差异,这时,血压测量值变成了因变量y,测量时间点和分组变成了自变量x1和x2,目前的数据格式,显然不符合我们接下来分析的要求。

我们需要将9个时间点的列进行堆叠,形成两列,一列时间点,另一列测量值,且一一对应。在JMP里该怎样操作呢?只需一步!

堆叠的操作在菜单栏表→堆叠,点开后可见图3所示对话框。

图3 列堆叠对话框

  • 红色方框中显示我们要堆叠的列,这个示例数据中,我们需要将BP 8M至BP 6F九个变量均拖入到该框中;
  • 蓝色方框中填入新生成数据表的名称;
  • 绿色椭圆框中是新建列名称。由于我们堆叠完成后会形成两个新变量,一个是时间点(源标签列),一个是血压测量值(堆叠数据列),我们可以分别为其设定变量名,如果不做修改,则新变量会采用系统默认的【数据】和【标签】作为变量名;因为我们要把所有的变量名堆叠为一列而非多列,所以左侧橙色方框内的多序列堆叠暂不勾选(后面会为大家介绍需要勾选这个选项的情况);
  • 左侧下方绿色方框内是对未堆叠列的处理,这个示例数据中是被测者和剂量这两个变量,我们选择全部保留。

我们用动图演示一下操作过程,见图4。

图4 列堆叠操作过程演示

新生成的数据表如图5所示。

图5 列堆叠后新生成数据表

20个被测者每人测了9个时间点的血压值,所以新生成的数据表有180行观测,标签和数据分别为堆叠前的时间点和血压值。这样,我们就可以进行后续的分析了。

02 将多列指标堆叠为多列指标

从标题来看,似乎在做无用功,别着急,前者的多列指标与后者的多列指标可不是一回事。

还是用上面提到的血压数据,出于不同的分析目的,我们可能想将每日的血压值作各作为一列,这时就不能简单将其堆叠为标签和数据两列了,而是需要堆叠成三组标签加数据的列,每组代表一日的测量情况。

操作与之前相同,不同的是需要勾选左侧的“多序列堆叠”(如图6):

图6 多序列堆叠

因为这里是连续的三列变量堆叠为一列,共堆叠成三列,所以我们将序列数写为3,并勾选“连续”,点击确定即可,我们用动图演示一下操作过程,见图7。

图7 多序列堆叠过程演示

生成的数据表如图8所示。每个被测者的每日数据为一列,我们可以单独比较四组被测者某一日的血压是否相等。


图8 多序列堆叠新生成数据表

日常数据整理与汇总中,除了存在将多列堆叠为一列的情况,还有将一列拆分为多列的情况。我们将在之后的文章中为大家介绍“堆叠”的反向操作—拆分,即如何将一列指标拆分为多列指标。拆分究竟有何意义?又有哪些注意事项?敬请期待后续的系列!

如果你还未体验过JMP,欢迎下载JMP试用,跟着文章练起来吧!

数据清洗之“堆叠”—多列数据合并处理的神器相关推荐

  1. mysql 多列合并为一列_多列数据合并一列,还在用数据透视就out了,用=号只要三步完成...

    以前我们经常使用Excel表格进行数据分类,比如将多列的数据合并到一列当中,这个时候我们会使用数据透视表.函数等多种方法来操作.今天我们就来学习,如何利用一个=号,快速将多列数据合并为一列. 如上图所 ...

  2. oracle 将多列数据合并成一列显示

    将多列数据合并成一列数据显示 方法一:执行update语句,之后select 出来,这个不是本次的重点 方法二:不执行update语句,直接select出来的时候就显示了,但是不改变表结构和数据 (A ...

  3. Excel如何将多列数据合并为一列

    今天给大家分享一下Excel如何把多列数据合并为一列. 1.插件法 1.如下图,是一些省市区信息,现在我们想要把他们合并起来形成一个完整的地址 2.点击方方格子(一款常用Excel插件,具体的下载安装 ...

  4. 如何根据某一列数据合并多个excel为

    一个文件? 要根据某一列数据合并多个 Excel 文件为一个文件,你可以使用 Microsoft Excel 的「数据透视表」功能. 打开一个空的 Excel 文件,并将所有需要合并的 Excel 文 ...

  5. php 相同数据合并单元格,利用for循环实现excel中多列数据合并到一个单元格

    详细内容 今天在工作中,老板给我一个任务,把excel表格中的多列数据合并到一列中. 数据如下: 注意:数据从16601到20000,也就是说有两千个网址. 下面为大家介绍几种方法: 第一种:使用wp ...

  6. excel多列多行堆叠成多列一行,(excel把一行多列数据转成几行几列的表格)excel多列数据合并成一列...

    怎么将excel中两列转换成多行多列 在G1 H1中分入或复制粘列公 =INDEX(A:A,INT(ROW(A4)/4)) =INDIRECT(ADDRESS(INT(ROW(A4)/4),MOD(R ...

  7. spark 把一列数据合并_Spark DataFrame列的合并与拆分

    import org.apache.spark.ml.attribute.{Attribute, NumericAttribute} import org.apache.spark.sql.Spark ...

  8. 如何在 Excel 中快速将多列数据合并到一列?(不同方法实现)前提不覆盖

    日常工作中,我们可能会遇到将不同列的数据合并为一列,前提是他们之间没有同行的数据,合并后不会覆盖数据. 例如我们需要将下面几列的数据合并为一列: 这是举例的数据,现实生活中可能数据量会有点大 想要快速 ...

  9. WPS使用技巧之Excel表格两列数据合并

    文章目录 前言 一.使用步骤 前言 日常工作中,难免碰到一些需要将excel表格中两列单元格的数据内容合并在一起的时候,那如何将excel表格中两列内容合并到一起呢?接下来本博客跟大家讲讲具体操作步骤 ...

最新文章

  1. c语言编程高价是啥,有哪位高手可以帮我做几道c语言编程,有钱的呀,价格可以商量...
  2. while (n-- > 0) 的用法
  3. 事业单位计算机岗位考公基吗,江苏事业单位统考考公基吗
  4. 关于浏览器中copy, cut, paste捕获的总结
  5. php array_walk和array_walk_recursive对数组中的每个元素应用用户自定义函数
  6. FreeCAD源码分析:Assembly3模块
  7. java程序设计大赛acm_参加ACM程序设计大赛,对C的掌握程度要多深??
  8. 电商管理系统微服务架构图
  9. 【网站排名软件】如何让网站关键词快速排名到首页
  10. 国产操作系统要起来?自主银河麒麟V10发布!
  11. tipask 3.5问答系统部署说明,超详细命令行部署,挂载iso,可内网使用。
  12. TabTransformer:用于表格数据的Transformer
  13. [XDOJ]矩阵相乘
  14. 折腾了一把 JAX-WS, SOA Java EE 5 (part 1 of 3)
  15. Jackson JsonParser 和 JsonGenerator
  16. 浅谈设计模式在iOS开发实战项目中的应用
  17. 今日学习在线编程题:余数之和
  18. unity把公共方法在Inspector 界面上实现一个按钮点击直接调用的最快最方便的方式
  19. QT 嵌入式 输入法 软键盘
  20. 大数据培训技术Kibana

热门文章

  1. 调侃python的段子_一句话的精辟搞笑段子【幽默调侃的句子】
  2. Apache apxs 扩展工具的安装
  3. Godadday.com空间安装OpenCart电子商务系统教程
  4. AVPictureInPictureController(iPad画中画)
  5. Ubuntu16.04下的英文词典Artha
  6. c语言菜单栏隐藏,c语言-菜单工具栏与状态栏.ppt
  7. 小强与小明的故事-正在疯传的伟大故事
  8. vue父子,兄弟组件传值
  9. perl 正则表达式使用技巧
  10. ELK 环境搭建 (一)