複数の名前を持つスタック列こんにちは、みんな!
次のようなデータ テーブルがあるとします。
A、B1、B2、C1、C2、D
1,2,3,4,5,16
6,7,8,9,10,16
11,12,13,14,15,16
新しいテーブルが次のようになるように、これらを積み重ねます。
A、B、C
1,2,4
1,3,5
6,7,9
6,8,10
11,12,14
11,13,15
リストが 3 つあります。1 つは保持する必要のある列を含みます: list_to_keep= {A}、list_to_stack_before= {B1,C1}、list_to_stack_after = {B2,C2}。
まず、新しい列名を持つ新しいリストを作成するスクリプトを作成しました。
新しい列名 = {};
str = char(リストをスタックする前);
newstr = 置換文字列 (str,"", "", "_be_sam","");
新しい列名を解析します(newstr);
次に、スタック関数をループしようとしましたが、常に行が追加されるだけです。スタック データ列引数で複数の名前を使用できないため、通常のスタック関数は使用できません。どうすればこの問題を解決できますか? ありがとうございます。私は JMP の初心者です。
自動化とスクリプトRe: 複数の名前を持つスタック列わあ、複数シリーズのスタックとスタック + 分割の間の素晴らしいリンクですね!
Re: 複数の名前を持つスタック列わかりました-
スクリプトを作成できるのは良いことです。多くの列の名前を変更することを避けるために、スケーラブルなものを探していることを明確にしていただきありがとうございます。
まず余談ですが、手動モードでの列名操作に関するヒントとコツですが、大規模に行うと、これは迅速かつ強力です (ただし、注意して行う必要があります)。
- 列ペインで、すべての列を選択し、「コピー」(テキストをコピー バッファに格納します)
- 別のデータ テーブル (またはスプレッドシートやワード プロセッシング プログラム) で「貼り付け」を行うと、列のリストがテキストとして作成されます。
必要に応じて操作します (編集テキストをその場で入力したり、数式列を作成してプレフィックス/サフィックスを追加したり... 何でも)...
- 編集したテキストの新しい列名のリストを「コピー」します
- 元のテーブルに戻ります。列の選択を解除し、列ペインで列のリストを再度選択します。編集した列名を上書きするには、「貼り付け」をクリックします。
前に提案したテーブル操作方法に戻ります。
最下位の文字が常に 1/2 である場合 (または少なくとも積み重ねる必要がある列ファミリを示す場合)、これは 2 つのテーブル操作と 1 つの数式で実行できます。アクションを繰り返し実行する必要がある場合は、これらの手順をスクリプト化するか、ワークフロー ビルダーでキャプチャできます。

最下位の文字を除いて「ラベル」をトリミングする数式列を追加します

トリムされたラベルによってテーブルデータを「分割」します...

Re: 複数の名前を持つスタック列列 D を削除していますか? 実際のデータ テーブルでは、削除する列をどのように決定しますか? 列の命名規則は何ですか (プレスタックとポストスタック)? これは、JSL で自動化するのはそれほど難しくないはずです。
*編集*
また、倍数の数は常に同じですか? たとえば、B1 と B2 がある場合、C1 と C2 は常に存在するのでしょうか、それとも C3 も存在するのでしょうか? もしそうなら、どのように処理すればよいでしょうか?
Re: 複数の名前を持つスタック列こんにちは、グレッグさん。返信ありがとうございます!
私はスタック インターフェイスに精通しており、スクリプトをスタックするためにワークフロー ビルダーも使用しました。名前変更の問題は、スタックしたい列が 3 つではなく 40 個ほどあり、新しい測定値が入ってくると列数が増えることが予想されることです。
リストを使用して列の名前を変更するスクリプトを作成できる可能性があることに気づきましたが、これはあまり良い回避策ではなく、順序に間違いが生じやすいようです。もっとスムーズな方法があることを期待していました。「新しい列名」オプションでは複数の引数が許可されないのは非常に残念です。
最高
Re: 複数の名前を持つスタック列こんにちは、新メンバー
スクリプトの作成は可能ですが、コーディングする前にどこまでできるか確認してみるとよいでしょう (ヒント: JMP では、かなり高度なことが可能な場合が多いです)。
テーブル メニューのスタック コマンドを使用すると、ほとんどの操作を実行できます。リアルタイム プレビューは非常に役立ちます。

このコマンドを実行した後、「データ」列の名前を A と B に変更し、ラベル列を削除します。
スクリプトを作成する場合は、スタック コマンドを実行した後、左上のパネルにある緑色の「ソース」三角形でアクションを再実行します。右クリックして編集すると、スクリプトの構文が表示されます。
スクリプト構文を取得するには、ワークフロー ビルダーを使用して手順を記録し、赤い三角形をクリックしてスクリプト ウィンドウに保存します。