先頭にゼロを付け続けるデータセット内の列の 1 つは従業員 ID です。 すべての従業員 ID の長さは 8 で、先行ゼロで始まります。 データを含む Excel ファイルを開くと、JMP は先頭のゼロを削除するようです。 JMPがそれを行わないようにする方法はありますか? それとも、その列が xlsx ファイルに保存される方法と関係があるのでしょうか?
ここで見つけたコードを使用してそれらを再度追加しようとしましたが、最初の行にそれらを追加し、他の行ごとにすべての文字を0に変更しました。 ご協力をよろしくお願いいたします。
Re: 先頭にゼロを付け続ける@Mark_Bailey最善の解決策を示しました。ただし、ID 列の値が正しくないデータ テーブルが既に JMP に 1 つ以上ある場合は、値を変換する非常に単純なスクリプトを以下に示します。
Names Default To Here( 1 );
dt = Current Data Table();
// Change the ID column to character
dt:ID << set data type( character );
// Loop through each row adding in the missing leading zeros
For Each Row(
:ID = Substr( "00000000", 1, 8 - Length( :ID ) ) || :ID;
);
:ID への参照を実際の列の名前に置き換えるだけです。
Re: 先頭にゼロを付け続ける数値コードは単なるラベルまたはカテゴリ (ID) のようなので、文字データとして保持できます。 Excel インポート ウィザードのプレビュー ペインのオプションを使用して、デフォルトの解釈 (数値) を文字に変更します。
Re: 先頭のゼロを維持する別のアプローチ: フィラー付きの右()を使用する:

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
new column ("weight_8", Character, Formula(right(Char(:weight),8,"0")))