使用 JMP > 输入和编辑数据 > 重构数据 > 压缩数据表中的选定列
发布日期: 09/18/2023

压缩数据表中的选定列

JMP 支持您压缩数据表中的列,以便尽量减小文件大小,从而减少分析数据所需的内存空间。在数值列包含许多小的整数或是有任何列包含不足 255 个唯一值的情况下,该功能很有帮助。例如,压缩具有 389 列和 85,000 行的数据表中的列可能将文件大小从 250MB 缩小至 33MB(具体取决于数据类型)。

压缩列时,JMP 会根据数据类型来验证是否能将数据存储为更紧凑的格式:

在唯一值不足 255 个的字符列中,在适用时会向列添加“列表检查”属性(图 4.37)。选择“允许 16 位列表检查压缩”首选项时,“列表检查”属性也会添加到含有 255 个以上唯一值的字符列中。

“列表检查”属性会将选定列中的值限制为有效值。当选定列中的值个数太大时,不会应用“列表检查”属性。例如,若值个数几乎与行数相同时,则数据表不会将“列表检查”属性添加至列。

对于数值列,仅压缩“最佳”、“固定小数位数”或“数据”格式的列。数据都尽可能压缩为单字节、双字节或 4 字节的整数(图 4.38)。有关短整数的详细信息,请参见“短整型格式”

若具有非整数值的数值列中的唯一值不足 255 个,也可以对这样的列进行压缩。在这种情况下,将向列添加“列表检查”属性。

注意:

要自动压缩唯一值小于或等于 65,535 的列,请在“常规”组中选择允许 16 位列表检查压缩首选项。“列表检查”属性也会添加到该列中。

在具有“列表检查”属性的列中,您只能输入列表中的值。若不这样做,JMP 会在您试图输入新值时警告单元格包含无效数据。请参见“列表检查”

图 4.37 添加至已压缩字符列的“列表检查”属性 

List Check Property Added to a Compressed Character Column

图 4.38 显示压缩前后数值列的“列信息”窗口 

Column Info Window Showing Numeric Column before and after Compression

要压缩列,请选择一个或多个列,然后选择列 > 实用工具 > 压缩选定列。(若不知道可以压缩哪些列,则可以选择所有列。)

将尽可能压缩一列或多列。日志会显示已压缩哪些列以及压缩这些列的方式。(选择视图 > 日志可显示日志。)

注意:要手动压缩某个数值列,请将“表”首选项设置为允许短型数值数据,然后将该列的数据类型改为单字节整数双字节整数4 字节整数。有关该首选项的详细信息,请参见“数据表的首选项”

需要更多信息?有问题?从 JMP 用户社区得到解答 (community.jmp.com).