同じ文字列を持つ列名をループし、サブセットを作成しますやあ、
300列のJMPテーブル「シート1」があります。 列名に「Ahu1」という文字列を持つすべての同じ列のサブセットを作成し、列の追加、更新、グラフの生成、最終的にフォルダーへの保存などのサブセットを変更しようとしています。 『Ahu1』の脚本を書かせていただきました。 しかし、他のすべての「Ahu's」についても同じことをしなければなりません。 このプロセスを、文字列を含む他の列名 (Ahu2、Ahu3、Ahu4、Ahu5、Ahu6...Ahu52) に対して繰り返したいと考えています。 forループでこれを行う方法は?
スクリプトは以下です。
original_dt = Current Data Table();
Data Table( "Sheet1" ) << Subset(
Output Table( "Ahu1", link to original data table( 0 ) ),
All rows,
columns(
:Timestamp,
:donSteedOccupancy,
:Name( "Raeford, NC Temp" ),
:DonSteedES Ahu1 ClgVlvCmd,
:DonSteedES Ahu1 HtgVlvCmd,
:DonSteedES Ahu1 DaT,
:DonSteedES Ahu1 SaFanCmd,
:DonSteedES Ahu1 ZnT,
:DonSteedES Ahu1 ZnTStpt
)
);
Ahu1_dt = Data Table( "Ahu1" );
Ahu1_dt << New Column( "Occupancy",
character,
Nominal,
Formula( Munger( :donSteedOccupancy, Length( :donSteedOccupancy ) - 4, Length( :donSteedOccupancy ) ) )
);
Column( "Occupancy" ) << delete formula;
Ahu1_dt << delete columns( "donSteedOccupancy" );
Ahu1_dt << New Column( "SaFanCmd",
character,
Nominal,
Formula(
Munger(
:DonSteedES Ahu1 SaFanCmd,
Length( :DonSteedES Ahu1 SaFanCmd ) - 4,
Length( :DonSteedES Ahu1 SaFanCmd )
)
)
);
Column( "SaFanCmd" ) << delete formula;
Ahu1_dt << delete columns( "DonSteedES Ahu1 SaFanCmd" );
Ahu1_dt << Column( "Occupancy" );
For Each Row( :Occupancy = Match( :Occupancy, " 1min", " 1", " 0min", " 0", :Occupancy ) );
Column( "Occupancy" ) << Data type( character ) << Set Data Type( Numeric );
Ahu1_dt << Column( "SaFanCmd" );
For Each Row( :SaFanCmd = Match( :SaFanCmd, " 1min", " 1", " 0min", " 0", :SaFanCmd ) );
Column( "SaFanCmd" ) << Data type( character ) << Set Data Type( Numeric );
Ahu1_dt:DonSteedES Ahu1 ClgVlvCmd << Format( "percent" );
Ahu1_dt:DonSteedES Ahu1 HtgVlvCmd << Format( "percent" );
Column( "SaFanCmd" ) << Modeling type( continuous );
optstartgraph = Ahu1_dt << Graph Builder(
Size( 1377, 923 ),
Variables(
X( :Timestamp ),
Y( :DonSteedES Ahu1 ClgVlvCmd ),
Y( :DonSteedES Ahu1 HtgVlvCmd, Position( 1 ) ),
Y( :Name( "Raeford, NC Temp" ) ),
Y( :DonSteedES Ahu1 DaT, Position( 2 ) ),
Y( :DonSteedES Ahu1 ZnT, Position( 2 ) ),
Y( :DonSteedES Ahu1 ZnTStpt, Position( 2 ) ),
Y( :SaFanCmd, Position( 2 ), Side( "Right" ) ),
Color( :Occupancy )
),
Elements( Position( 1, 1 ), Line( X, Y( 1 ), Y( 2 ), Color( 0 ), Legend( 5 ) ), Heatmap( X, Legend( 8 ) ) ),
Elements(
Position( 1, 2 ),
Line( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Color( 0 ), Legend( 6 ) ),
Line( X, Y( 5 ), Color( 0 ), Legend( 7 ) ),
Heatmap( X, Legend( 9 ) )
),
SendToReport(
Dispatch( {"Line[DonSteedES Ahu1 ClgVlvCmd...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Heatmap[DonSteedES Ahu1 ClgVlvCmd...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[SaFanCmd] (right)"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Heatmap[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch(
{},
"Timestamp",
ScaleBox,
{Min( 3537633600 ), Max( 3538263600 ), Interval( "Hour" ), Inc( 1 ), Minor Ticks( 0 ),
Label Row( Label Orientation( "Angled" ) )}
),
Dispatch( {}, "DonSteedES Ahu1 ClgVlvCmd", ScaleBox, {Min( 0 )} ),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
8,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227,
0}, {221, 221, 0}, {238, 119, 0}, {252, 11, 11}, {158, 33, 33}}, {0,
0.193732193732194, 0.2, 0.495726495726496, 0.501424501424502, 0.507122507122507,
0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
), Legend Model(
9,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227,
0}, {221, 221, 0}, {238, 119, 0}, {252, 11, 11}, {158, 33, 33}}, {0,
0.193732193732194, 0.2, 0.495726495726496, 0.501424501424502, 0.507122507122507,
0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
)}
),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {5, [0, 1], 8, [2], 6, [-3, -3, 4, 5], 7, [-3], 9, [3]} ),
Position( {0, 1, 2, -3, -3, 4, 5, -3, 3} )}
)
)
);
optstartgraph << Save Picture( "C:\Projects\Projects\Hoke\Year 1\Jmp\Year 0\DonSteed\Feb16\Ahu1.jpg", "JPG" );
optstartgraph << close window;
私を助けてください。
ありがとう。
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@txnelsonどうもありがとう 。
それは働いています!
@uday_guntupalliあなたの助けにも感謝します! 
Re: 同じ文字列を持つ列名をループしてサブセットを作成する以下は、50 個の Ahu 列セットすべてをループするバージョンのコードです。ループを可能にするために何が行われたかについては、スクリプト内のコメントを参照してください。
Names Default To Here( 1 );
original_dt = Data Table( "Sheet1" );
// Loop across all 50 Ahu column sets
// The number of column sets could be programatically determined
// if desired
For( i = 1, i <= 50, i++,
// Set the Ahu version to be used
targetAhu = "Ahu" || Char( i );
// Create the subsetted data table, naming it by the
// name of the current Ahu version
Ahu_dt = original_dt << Subset(
Output Table( targetAhu, link to original data table( 0 ) ),
All rows,
columns(
original_dt:Timestamp,
original_dt:donSteedOccupancy,
original_dt:Name( "Raeford, NC Temp" ),
Column( original_dt, "DonSteedES " || targetAhu || " ClgVlvCmd" ),
Column( original_dt, "DonSteedES " || targetAhu || " HtgVlvCmd" ),
Column( original_dt, "DonSteedES " || targetAhu || " DaT" ),
Column( original_dt, "DonSteedES " || targetAhu || " SaFanCmd" ),
Column( original_dt, "DonSteedES " || targetAhu || " ZnT" ),
Column( original_dt, "DonSteedES " || targetAhu || " ZnTStpt" )
)
);
// no need for this statement, since it is set when the data table is created
//Ahu_dt = Data Table( targetAhu );
// No changes needed here, except for pointing to the current Ahu data table
Ahu_dt << New Column( "Occupancy",
character,
Nominal,
Formula( Munger( :donSteedOccupancy, Length( :donSteedOccupancy ) - 4, Length( :donSteedOccupancy ) ) )
);
Column( Ahu_dt, "Occupancy" ) << delete formula;
Ahu_dt << delete columns( "donSteedOccupancy" );
// This section of code has required changes embedded within a formula
// JMP will not resolve the code properly and therefore, Substitution
// is required to force the generation of the exact code required for
// the formula
Eval(
Substitute(
Expr(
Ahu_dt << New Column( "SaFanCmd",
character,
Nominal,
Formula( Munger( __SaFanCmd__, Length( __SaFanCmd__ ) - 4, Length( __SaFanCmd__ ) ) )
)
),
Expr( __SaFanCmd__ ), Parse( ":DonSteedES " || targetAhu || " SaFanCmd" )
)
);
Column( Ahu_dt, "SaFanCmd" ) << delete formula;
// Minor changes, just making sure the current target data table is being
// pointed to
Ahu_dt << delete columns( "DonSteedES " || targetAhu || " SaFanCmd" );
Ahu_dt << Column( "Occupancy" );
For Each Row( ahu_dt:Occupancy = Match( Ahu_dt:Occupancy, " 1min", " 1", " 0min", " 0", Ahu_dt:Occupancy ) );
// I don't understand this next line of code....changing to character and then changing to numeric
// unless you are using JMP to get rid of non numeric data
Column( ahu_dt, "Occupancy" ) << Data type( character ) << Set Data Type( Numeric );
Ahu_dt << Column( "SaFanCmd" );
For Each Row( ahu_dt:SaFanCmd = Match( ahu_dt:SaFanCmd, " 1min", " 1", " 0min", " 0", ahu_dt:SaFanCmd ) );
Column( ahu_dt, "SaFanCmd" ) << Data type( character ) << Set Data Type( Numeric );
Column( Ahu_dt, "DonSteedES " || targetAhu || " ClgVlvCmd" ) << Format( "percent" );
Column( Ahu_dt, "DonSteedES " || targetAhu || " HtgVlvCmd" ) << Format( "percent" );
Column( Ahu_dt, "SaFanCmd" ) << Modeling type( continuous );
// The Graph Builder Platform has a few places where code will not be resolved, and therefore
// once again Substitution() is what is needed to make it work
Eval(
Substitute(
Expr(
optstartgraph = Ahu_dt << Graph Builder(
Size( 1377, 923 ),
Variables(
X( :Timestamp ),
Y( Column( Ahu_dt, "DonSteedES " || targetAhu || " ClgVlvCmd" ) ),
Y( Column( Ahu_dt, "DonSteedES " || targetAhu || " HtgVlvCmd" ), Position( 1 ) ),
Y( :Name( "Raeford, NC Temp" ) ),
Y( Column( Ahu_dt, "DonSteedES " || targetAhu || " DaT" ), Position( 2 ) ),
Y( Column( Ahu_dt, "DonSteedES " || targetAhu || " ZnT" ), Position( 2 ) ),
Y( Column( Ahu_dt, "DonSteedES " || targetAhu || " ZnTStpt" ), Position( 2 ) ),
Y( :SaFanCmd, Position( 2 ), Side( "Right" ) ),
Color( :Occupancy )
),
Elements( Position( 1, 1 ), Line( X, Y( 1 ), Y( 2 ), Color( 0 ), Legend( 5 ) ), Heatmap( X, Legend( 8 ) ) ),
Elements(
Position( 1, 2 ),
Line( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Color( 0 ), Legend( 6 ) ),
Line( X, Y( 5 ), Color( 0 ), Legend( 7 ) ),
Heatmap( X, Legend( 9 ) )
),
SendToReport(
Dispatch( {__LineClgVlvCmd__}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {__HeatmapClgVlvCmd__}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[SaFanCmd] (right)"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Heatmap[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch(
{},
"Timestamp",
ScaleBox,
{Min( 3537633600 ), Max( 3538263600 ), Interval( "Hour" ), Inc( 1 ), Minor Ticks( 0 ),
Label Row( Label Orientation( "Angled" ) )}
),
Dispatch( {}, "DonSteedES " || targetAhu || " ClgVlvCmd", ScaleBox, {Min( 0 )} ),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
8,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227, 0}, {221, 221, 0
}, {238, 119, 0}, {252, 11, 11}, {158, 33, 33}}, {0, 0.193732193732194, 0.2, 0.495726495726496,
0.501424501424502, 0.507122507122507, 0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
), Legend Model(
9,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227, 0}, {221, 221, 0
}, {238, 119, 0}, {252, 11, 11}, {158, 33, 33}}, {0, 0.193732193732194, 0.2, 0.495726495726496,
0.501424501424502, 0.507122507122507, 0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
)}
),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {5, [0, 1], 8, [2], 6, [-3, -3, 4, 5], 7, [-3], 9, [3]} ), Position(
{0, 1, 2, -3, -3, 4, 5, -3, 3}
)}
)
)
)
),
Expr( __LineClgVlvCmd__ ), "Line[DonSteedES " || targetAhu || " ClgVlvCmd...]",
Expr( __HeatmapClgVlvCmd__ ), "Heatmap[DonSteedES " || targetAhu || " ClgVlvCmd...]"
)
);
// Save the current graphic, replacing the jpg name with the current target Ahu version
optstartgraph << Save Picture( "C:\Projects\Projects\Hoke\Year 1\Jmp\Year 0\DonSteed\Feb16\" || targetAhu || ".jpg", "JPG" );
optstartgraph << close window;
// You can also close the current target data table if you want
close( dt_Ahu, no save );
); // End of For LoopRe: 同じ文字列を持つ列名をループしてサブセットを作成する@himajafeb8 、
この時点で、私はそれを機能させることができませんでした。 support@jmp.com に連絡します。
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@uday_guntupalli
それは機能していません。 他に方法はありますか?
ありがとう
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@himajafeb8 、
このようなことを試す場合 - 基本的に正規表現を使用して、毎回ループで Ahu と一致させようとしますが、条件を編集して 1 から n までインクリメントすると、うまくいくと思います。 私は実用的な例を持っていません。 正規表現の面でもう少し試してみます
dt_Raw = Current Data Table();
ColNames = dt_Raw << Get Column Names("String");
RegexToMatch = "^(a|A)hu[0-9]$";
for(i = 1 , i <= N Items(ColNames), i++,
If(!IsMissing(Regex(Char(ColNames[i]),RegexToMatch)),
Col = Column(dt_Raw,i);
Col << Set Selected(1);
);
);Re: 同じ文字列を持つ列名をループしてサブセットを作成する@uday_guntupalli
サンプルデータを添付しました。
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@himajafeb8 、
データのサンプルを共有できますか?
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@uday_guntupalliすべての提案をありがとう。 何かを投稿する前に心に留めておきます。
以下にコードを投稿しましたが、まったく問題なく動作しています。 しかし、このコードをループで実行する必要があります。
元のデータ テーブル「Sheet 1」があります。 ("Timestamp" 、 "donsteedOccupancy" 、 "Name( "Raeford, NC Temp" )" 、 "x Ahu1 y" 、 "x Ahu1 z" , "x Ahu1 m" ,..."x Ahu2 y" , "x Ahu2 z" , "x Ahu2 m"......."x Ahu70 y" , "x Ahu70 z" 、「×Ahu70m」。
最初の 3 列 ("Timestamp" 、"donsteedOccupancy" 、"Name( "Raeford, NC Temp" )" ) を含むメイン データテーブルからサブセットを作成したい全てからなる列名「あふ1」新しいデータ テーブルに移動し、コードで説明したようにさまざまなアクションを実行します (追加の列の作成、列の削除、列のプロパティの変更、グラフの生成)。
基本的に、このコードには「Ahu1」があり、「Ahu[i]」に置き換えてループで実行する必要があります。
私はこのようなことをしたいです。
For( i=0; i<= 52, i++
Data Table("Sheet1") << subset(
Output table( "Ahu[i]"),
columns(Timestamp,..., "x Ahu[i] y" , "x Ahu[i] z" , "x Ahu[i] m"));
Ahu[i]_dt= Data Table("Ahu[i]");
.
.
.
Close( Ahu[i]_dt, save("Ahu[i].jmp") );
「Ahu1」を含むコード内のすべてのフィールドを「Ahu[i]」に置き換える必要があります。
助けてくれてありがとう。
original_dt = Current Data Table();
/* Sheet 1 is my original data table. I am creating a subset from original sheet which has column names as : Timestamp,donsteedOccupancy, Name( "Raeford, NC Temp" )
and all the columns which has a string "Ahu1". I am naming this output table as Ahu1.*/
Data Table( "Sheet1" ) << Subset(
Output Table( "Ahu1", link to original data table( 0 ) ),
All rows,
columns(
:Timestamp,
:donSteedOccupancy,
:Name( "Raeford, NC Temp" ),
:DonSteedES Ahu1 ClgVlvCmd,
:DonSteedES Ahu1 HtgVlvCmd,
:DonSteedES Ahu1 DaT,
:DonSteedES Ahu1 SaFanCmd,
:DonSteedES Ahu1 ZnT,
:DonSteedES Ahu1 ZnTStpt
)
);
/* Assigning the output data table to "Ahu1_dt" */
Ahu1_dt = Data Table( "Ahu1" );
/* Creating new columns called "Occupancy and SafanCmd" with formula's and deleting the formula link and also the original column's */
Ahu1_dt << New Column( "Occupancy",
character,
Nominal,
Formula( Munger( :donSteedOccupancy, Length( :donSteedOccupancy ) - 4, Length( :donSteedOccupancy ) ) )
);
Column( "Occupancy" ) << delete formula;
Ahu1_dt << delete columns( "donSteedOccupancy" );
Ahu1_dt << New Column( "SaFanCmd",
character,
Nominal,
Formula( Munger( :DonSteedES Ahu1 SaFanCmd, Length( :DonSteedES Ahu1 SaFanCmd ) - 4, Length( :DonSteedES Ahu1 SaFanCmd ) ) )
);
Column( "SaFanCmd" ) << delete formula;
Ahu1_dt << delete columns( "DonSteedES Ahu1 SaFanCmd" );
/* Using Recode to change values for columns "Occupancy and SaFanCmd " and also changing the column Data Types*/
Ahu1_dt << Column( "Occupancy" );
For Each Row( :Occupancy = Match( :Occupancy, " 1min", " 1", " 0min", " 0", :Occupancy ) );
Column( "Occupancy" ) << Data type( character ) << Set Data Type( Numeric );
Ahu1_dt << Column( "SaFanCmd" );
For Each Row( :SaFanCmd = Match( :SaFanCmd, " 1min", " 1", " 0min", " 0", :SaFanCmd ) );
Column( "SaFanCmd" ) << Data type( character ) << Set Data Type( Numeric );
/* Changing Format for the column's "DonSteedES Ahu1 ClgVlvCmd" and "Ahu1_dt:DonSteedES Ahu1 HtgVlvCmd" */
Ahu1_dt:DonSteedES Ahu1 ClgVlvCmd << Format( "percent" );
Ahu1_dt:DonSteedES Ahu1 HtgVlvCmd << Format( "percent" );
/* Changing Modeling type for the column : SaFanCmd */
Column( "SaFanCmd" ) << Modeling type( continuous );
/* Generating a Graph using Graph Builder for "Ahu1_dt" and assigning it to a object called "optstartgraph" .*/
optstartgraph = Ahu1_dt << Graph Builder(
Size( 1377, 923 ),
Variables(
X( :Timestamp ),
Y( :DonSteedES Ahu1 ClgVlvCmd ),
Y( :DonSteedES Ahu1 HtgVlvCmd, Position( 1 ) ),
Y( :Name( "Raeford, NC Temp" ) ),
Y( :DonSteedES Ahu1 DaT, Position( 2 ) ),
Y( :DonSteedES Ahu1 ZnT, Position( 2 ) ),
Y( :DonSteedES Ahu1 ZnTStpt, Position( 2 ) ),
Y( :SaFanCmd, Position( 2 ), Side( "Right" ) ),
Color( :Occupancy )
),
Elements( Position( 1, 1 ), Line( X, Y( 1 ), Y( 2 ), Color( 0 ), Legend( 5 ) ), Heatmap( X, Legend( 8 ) ) ),
Elements(
Position( 1, 2 ),
Line( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Color( 0 ), Legend( 6 ) ),
Line( X, Y( 5 ), Color( 0 ), Legend( 7 ) ),
Heatmap( X, Legend( 9 ) )
),
SendToReport(
Dispatch( {"Line[DonSteedES Ahu1 ClgVlvCmd...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Heatmap[DonSteedES Ahu1 ClgVlvCmd...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Line[SaFanCmd] (right)"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Heatmap[Raeford, NC Temp...]"}, "", OutlineBox, {Close( 0 )} ),
Dispatch(
{},
"Timestamp",
ScaleBox,
{Min( 3537633600 ), Max( 3538263600 ), Interval( "Hour" ), Inc( 1 ), Minor Ticks( 0 ), Label Row( Label Orientation( "Angled" ) )}
),
Dispatch( {}, "DonSteedES Ahu1 ClgVlvCmd", ScaleBox, {Min( 0 )} ),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
8,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227, 0}, {221, 221, 0}, {238, 119, 0},
{252, 11, 11}, {158, 33, 33}}, {0, 0.193732193732194, 0.2, 0.495726495726496, 0.501424501424502, 0.507122507122507,
0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
), Legend Model(
9,
Properties(
0,
{Transparency( 0.35 ), gradient(
{Color Theme(
{"mine", 16387, {{79, 16, 79}, {119, 0, 119}, {42, 63, 255}, {0, 170, 170}, {0, 227, 0}, {221, 221, 0}, {238, 119, 0},
{252, 11, 11}, {158, 33, 33}}, {0, 0.193732193732194, 0.2, 0.495726495726496, 0.501424501424502, 0.507122507122507,
0.943019943019943, 0.95, 0.954415954415954}}
)}
)}
)
)}
),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {5, [0, 1], 8, [2], 6, [-3, -3, 4, 5], 7, [-3], 9, [3]} ), Position( {0, 1, 2, -3, -3, 4, 5, -3, 3} )}
)
)
);
/*Saving the object in jpg format to a specfied file location. */
optstartgraph << Save Picture( "C:\Projects\Projects\Hoke\Year 1\Jmp\Year 0\DonSteed\Feb16\Ahu1.jpg", "JPG" );
/* Closing the object */
optstartgraph << close window;
/* close and save the data table "Ahu1_dt" */
Close( Ahu1_dt, save("C:\Projects\Projects\Hoke\Year 1\Jmp\Year 0\DonSteed\Feb16\Ahu1.jmp") );
Re: 同じ文字列を持つ列名をループしてサブセットを作成する@himajafeb8 、
いくつかの提案、
1. コードを共有する場合は、「JSL スクリプトを挿入」または「コードを挿入」オプションを使用してください。これにより、共有している内容を他の人が簡単に読み取れるようにコードがフォーマットされます。
2. 問題を分析し、実際に問題が発生しているコードの部分を説明してください。
あなたのタイトルで言えば、次のようなことをするとうまくいくと思います。 ただし、さらに質問がある場合は、親切に内訳してください。
Clear Log(); Clear Globals();
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Football.jmp" );
// Get Column Names
ColNames = dt << Get Column Names("String");
// Select Desired Columns
DesTerm = "Speed";
DesCols = {}; // Initialize empty list to store selected columns
for(i = 1 , i <= N Items(ColNames), i++,
If(Contains(ColNames[i],DesTerm),
Insert Into(DesCols,i);
Col = Column(dt,i);
Col << Set Selected(1);
);
);
// Subset
dt1 = dt << Subset(Selected Rows(0),Selected Columns(1));