JMP 可以比较两个打开的数据表,并报告数据、脚本、表变量、列名、列属性和列特性之间的差异。每个数据表中的列数和行数都显示在“比较数据表”窗口的顶部。在本例中,对样本数据表 Popcorn Trials.jmp 和 Popcorn.jmp 进行了比较。
图 4.22 关于数据表的基本信息
同名的列将自动匹配。在每个匹配的列之间绘制连线。您也可以手动链接两列。
1. 选择帮助 > 样本数据库,然后打开 Popcorn.jmp 和 Popcorn Trials.jmp。
2. 显示 Popcorn Trials.jmp 并选择表 > 比较数据表。
3. 从“与”列表中,选择 Popcorn.jmp。
此时应该自动从“比较”列表中选择 Popcorn Trials.jmp。
4. 在“匹配列”窗格中,选择产量和产量1,然后点击链接。
图 4.23 手动已链接列
同名列将自动链接。
注意:若点击“比较数据”图标 ,则不会比较已链接的列。这对列的值将显示在结果中,但不会进行比较。
5. 点击比较。
结果显示在“数据”报表中。
图 4.24 比较列
前八行相同,所以不显示。其余行(显示为蓝色)仅显示在第二个表 Popcorn.jmp 中。
6. 在“数据”报表中,取消选择隐藏没有差异的行。
图 4.25 显示没有差异的行
显示前八行是因为它们在两个数据表中是相同的。
7. 取消选择隐藏没有差异的列。
图 4.26 显示没有差异的列
同时存在于两个数据表中并且匹配的列将显示出来。您可以选择此选项为匹配的数据提供更多上下文。
注意:若单元格中的数据未完全显示,请选择文本,然后在“单元格数据”框中查看数据。
按行灵活
搜索要对齐的公共行。若您认为数据表较小且它们几乎相同,请考虑使用该选项。
按行
逐一比较各行。若您已经知道各行应该逐行排列,请考虑该选项。该比较运行起来会快很多。不过,若选择了默认的“按行灵活”,而且比较的时间太长,则可能需要选择该选项。
使用 ID 列
使用选定的 ID 列比较各行。该数据表的各行通过该 ID 列的值唯一标识。若数据表很大、排序不同或有缺失行,则考虑该选项。您可以选择不止一列。
忽略缺失值
忽略缺失数据。
允许相对误差
支持您指定数值数据的相对误差比率。若数值在您指定的相对误差率之内,则认为数值相等。相对误差比率越小,比较的精确度越高。
忽略大小写
比较文本时忽略大小写。
忽略空格
比较文本时忽略空白。
显示模糊差异
显示大致相同的数值以及字符串数据中的差异。使用“相对误差”字段中的值来删除不显著的差异。
隐藏没有差异的列
显示或隐藏所有匹配列。
隐藏没有差异的行
显示或隐藏包含匹配数据的行。
点击红色小三角并选择比较表属性可查看表脚本和变量中的差异。图 4.27 显示表变量和脚本是不同的。要查看完整的变量或脚本,请选择行并查看选定的元数据。
在本例中,两个注释都不同,引用变量和脚本仅存在于 Popcorn.jmp 中。已选定“注释”变量,以便您可以在“选定元数据”框中的两个数据表中看到该变量的内容。红色着色指示该文本仅存在于 Popcorn.jmp 中。蓝色着色指示该文本仅存在于 Popcorn Trials.jmp 中。
图 4.27 不同表变量
取消选择显示差异可查看每个数据表的名称和每个“注释”变量的完整内容,而不是只显示差异。
最短运行是在将字符声明为公共子段之前两个文件之间必须相同的最小连续字符数。公共子段没有背景色,因为它在两个文件中都存在。最短运行设置为 3,以防止太短的子段显示为公共,这通常没有任何帮助。例如,最短运行为 1 意味着两个文件中的任何单个字符都可以匹配。这导致许多非常短的公共文本段和差异段,这通常并不是良好的阅读体验。
点击红色小三角并选择比较列特性和属性可查看列注释、值颜色和类似项中的差异。
图 4.28 显示 Popcorn.jmp 和 Popcorn Trials.jmp 中的列注释有所不同。已选定 popcorn 列,以便您可以在“已选定的元数据”框中查看完整的注释以及两个注释之间的差异。
图 4.28 比较列特性和属性