JMPでは、データテーブルの列を圧縮して、ファイルのサイズを小さくし、データの分析に必要なメモリ容量を削減できます。この機能は、数値列に小さな数の整数値のみが含まれている場合や、1つの列にあるユニークな値の数が255個未満の場合に便利です。たとえば、389列85,000行のデータテーブルの列を圧縮すると、データタイプにより異なりますが、250MBのファイルサイズをおおよそ33MBに圧縮できます。
列の圧縮時には、データをそのデータタイプに基づいて圧縮形式で保存できるかどうかが検証されます。
• ユニークな値の個数が255未満の文字タイプの列では、必要に応じて「リストチェック」プロパティが列に追加されます(図4.37)。環境設定で[16ビットのリストチェックの圧縮を許可]が選択されている場合、ユニークな値が255個を超える文字タイプの列にも、「リストチェック」プロパティが追加されます。
「リストチェック」プロパティは、選択した列の値を有効な値のみに制限します。「リストチェック」プロパティは、選択した列の値の数が多すぎる場合には適用されません。たとえば、値の数が行数とほぼ同じ場合、そのデータテーブルでは「リストチェック」プロパティは列に適用されません。
• 数値の列の場合、形式が[最適]・[固定小数点]・[日付]のものだけが圧縮されます。可能な場合、1バイト・2バイト・4バイトのいずれかの整数型にデータが変更されます(図4.38)。整数型(short-integer)の詳細については、整数型(short-integer)を参照してください。
非整数値を含む数値列も、ユニークな値の個数が255未満の場合は圧縮できます。この場合は、その列に「リストチェック」プロパティが追加されます。
メモ:
• 65,535個以下のユニークな値がある列を自動的に圧縮するには、環境設定の[一般]で[16ビットのリストチェックの圧縮を許可]を選択してください。そうすれば、「リストチェック」プロパティもその列に追加されます。
• 「リストチェック」プロパティが設定された列では、リストに指定された値しか入力できません。指定値以外を入力しようとすると、セルに無効なデータが含まれているという警告メッセージが表示されます。リストチェックを参照してください。
図4.37 圧縮後の文字タイプ列に追加された「リストチェック」プロパティ
図4.38 数値列の圧縮前と後の列情報ウィンドウ
列を圧縮するには、列を選択して[列]>[ユーティリティ]>[選択された列の圧縮]を選びます(圧縮すべき列が確かでない場合は、すべての列を選択します)。
可能であれば列が圧縮されます。圧縮された列と、圧縮方法がログに表示されます(ログを表示するには、[表示]>[ログ]を選びます)。
メモ: 数値列を手動で圧縮するには、「環境設定」の[テーブル]で[整数型(short-integer)を使用可能にする]をオンにし、列のデータタイプを [1バイト整数]・[2バイト整数]・[4バイト整数]のいずれかに変更します。この環境設定の詳細については、データテーブルの環境設定を参照してください。