JMP スクリプト: 列内の指定された値ごとに新しい列を作成するこんにちは皆さん、
|90= の後に続く数値ごとに新しい列を作成し、その列に |90 の前にある文字列 (つまり、pX など) のラベルを付けようとしています。例として、以下の添付写真を参照してください。

したがって、最初の行では、「p1|90=」の後に来る 93 を取得し、「p1」というラベルの付いた新しい列を作成します。すべての「pX|90=」の後に来るすべての数字に対してこれを実行します。その pX は、sX または rX または pXa/b/c/... などである可能性もあります。したがって、それらの値に対しても新しい列を作成します。行あたりのデータ ポイントの数は、1 つの pX|90= 値から 15 の異なる pX|90= 値まで大きく異なります。おそらく、いくつかの値は sX|90= または rX|90= になります。
私は pX|00 データ値を取得する Word 関数を使用していました。今度は 90 だけを取得したいので、そのために使用していた以前のスクリプトを使用しようとしましたが、必要な値がすべて取得されていないことがわかりました。

これは数百行、すぐに数千行に及ぶため、手動で実行するのは現実的ではありません。
ここで使用するのが適切な関数は何ですか?
私は JMP スクリプトの初心者ですが、学びたいし、どんなアイデアでも聞きたいと思っています。ありがとうございます!
高度な統計モデリング自動化とスクリプト消費者および市場調査マスカスタマイゼーション品質およびプロセスエンジニアリングウィンドウズRe: JMP Script: 列で指定された値ごとに新しい列これが最善の方法かどうかはわかりませんが、かなり簡単です。
Names default to here(1);
dt= New Table( "splitting bunches",
Add Rows( 1 ),
New Column( "Fun",
Character,
"Nominal",
Set Values( {"<P>p1|00=51;p1|90=32;p2|00=48;p2|90=90;",
"</P><P>p1|00=47;p1|90=60;p4|00=73;p4|90=49;"
} )
),
);
dt << New Column("just_delim",
// this is just getting rid of that beginning part as I image you don't want it.
character, formula(substitute(:Fun, "</P><P>", ""))
);
// split it on ; into however many columns
dt << Text To Columns(
delimiter( ";" ),
columns( :just_delim )
);
// get the columns you just made
cols_to_stack = (dt << get Column References)[3::ncols(dt)];
// stack them now
dt_stack = dt << Stack(
columns( cols_to_stack ),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ), output table("stacked")
);
// same thing
dt_stack << Text To Columns(
delimiter( "|=" ),
columns( :Data )
);
dt_stack:"Data 1"n<<SET name=""></SET></P>Re: JMP Script: 列で指定された値ごとに新しい列私のために働いて、それは理にかなっています。 ありがとう! 「楽しい」と言っていただけて嬉しいです。