ユーザー入力に基づいて新しい列を生成し、移動する必要がありますユーザー入力に基づいて新しい列を生成しており、スクリプトを使用して移動する必要があります。スクリプトを修正できる方はいらっしゃいますか?

dt << New Column("Suspected "|| selectedCol,
Formula(
If(Contains(myValueList, char(as column(selectedCol))),
"Yes",
"No"
)
)
);
Data Table( dt ) << Move Selected Columns( as column("Suspected "|| selectedCol), after( as column(selectedCol) ) );
基本的なデータ分析とモデリングRe: ユーザー入力に基づいて新しい列を生成し、移動する必要がありますAs Column() を Name Expr() で囲み、リストに入れることで動作させることができます。
dt << Move Selected Columns(
{Name Expr( As Column( "Suspected " || selectedCol ) )},
After( As Column( selectedCol ) )
);
Re: ユーザー入力に基づいて新しい列を生成し、移動する必要がありますこの方法も、リスト内の文字列のみで機能しますが、After() には As Column() が必要です。
dt << Move Selected Columns(
{"Suspected " || selectedCol},
After( As Column( selectedCol ) )
);
Re: ユーザー入力に基づいて新しい列を生成し、移動する必要がありますこれが私がそれをどうやって動作させたかです
dt << New Column( "Suspected " || selectedCol,
Character,
Formula(
If( Contains( myValueList, Char( As Column( selectedCol ) ) ),
"Yes",
"No"
)
)
);
Eval(
Parse(
"dt << Move Selected Columns(:Suspected " || selectedCol || ", after( :" ||
selectedCol || ") );"
)
);
Re: ユーザー入力に基づいて新しい列を生成し、移動する必要があります問題を回避するために、列に式の評価を追加することを強くお勧めします(私の式とあなたの式を比較してみてください)。また、作成された列への参照を取得し、< <>
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
selectedCol = "age";
myValueList = {"12", "15"};
newcol = Eval(EvalExpr(
dt << New Column("Suspected "|| selectedCol, Character, Nominal, Formula(
If(Contains(Expr(myValueList), Char(Expr(NameExpr(As column(dt, selectedCol))))),
"Yes",
"No"
)
));
));
dt << Move Selected Columns(
newcol, After(Eval(selectedCol))
);