Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?다음과 같이 할 수 있습니다(EvalEvalExpr 필요).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Group Columns("group1", {"height", "weight"});
Eval(
EvalExpr(
dt << Oneway(
Y(Expr(dt << Get Column Group("group1"))),
X(:age)
)
)
);
보다 Eval Insert, Eval Expr, Parse 및 Substitute를 사용하여 한 표현식을 다른 표현식에 삽입 Eval(EvalExpr())에 대한 자세한 정보 및 예제
Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?
알겠습니다. 하지만 Y( 섹션에서 계속 반복하고 새 용어를 만드는 방법을 잘 모르겠습니다.
어떤 충고?
colgroupNames = dt << get column groups names;<BR /><BR />/*plotting a basic Fit YbyX just to get pValues. Formatting and style done on final plot*/<BR />ow1 = Oneway(<BR />Y( dtAggWide<<GET column="" group=""></GET>, dtAggWide<<GET column="" group=""></GET>, dtAggWide<<GET column="" group=""></GET>),<BR />X( :ChamberId ),<BR />//By(:),<BR /><BR />//All pairs Tukey HSD test<BR />All Pairs(<BR />1,<BR />Confidence Quantile( 0 ),<BR />Difference Matrix( 0 ),<BR />LSD Threshold Matrix( 0 ),<BR />Connecting Letters Report( 0 ),<BR />Ordered Differences Report( 1 )<BR />),<BR />//invisible, //use this to speed up.<BR />);dtAggWide = current data table();
dtAggWide << set name( "AggWide");
RecipeStepIndex ={"10.0.0.0.0.0", "11.0.0.0.0.0", "12.0.0.0.0.0"} // column groups names. Each group has 100+ columns.
//trying to create a series of charts using the groups, looping through the groups
ow1 = Oneway(
Y( for( i = 1, i<=Nitems( RecipeStepIndex), i++,
dtAggWide<<GET column="" group=""></GET>Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?그래서 나는이 솔루션을 @txnelson : https://community.jmp.com/t5/Discussions/Script-multiple-columns-grouped-in-distribution-plot/td-p/162557
하지만 이 표현식을 작성하는 대신 그룹 이름을 반복하는 방법이 있는지 궁금합니다.
Names Default To Here( 1 );
dtAggWide = current data table();
dtAggWide << set name( "AggWide");
//get the column groups
colgroupNames = dt << get column groups names;
//temporary string for testing
RecipeStepIndex ={"10.0.0.0.0.0", "11.0.0.0.0.0", "12.0.0.0.0.0"}
// Build a character string that represents the commands that need to be run
theExpr_start = "ow1 = Oneway(
Y( dtAggWide<<GET column="" group=""></GET>Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?다음은 코드를 다시 작성하여 표현식 작성의 필요성을 제거한 것입니다.
Names Default To Here( 1 );
dt = Current Data Table();
dt<< set name( "AggWide" );
//get the column groups and put them into one long list
colgroupNames = dt << get column groups names;
colsList = {};
For( i = 1, i <= N Items( colgroupNames ), i++,
Insert Into( colsList, dt << get column group( colgroupNames[i] ) )
);
//temporary string for testing
RecipeStepIndex = {"10.0.0.0.0.0", "11.0.0.0.0.0", "12.0.0.0.0.0"};
// Build a character string that represents the commands that need to be run
ow1 = Oneway(
Y( Eval( colsList ) )
,
X( :ChamberID ),
//By(:),
//All pairs Tukey HSD test
All Pairs(
1,
Confidence Quantile( 0 ),
Difference Matrix( 0 ),
LSD Threshold Matrix( 0 ),
Connecting Letters Report( 0 ),
Ordered Differences Report( 1 )
),
//invisible, //use this to speed up.
);
Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?대단히 감사합니다. 제 게시물에서 해당 정보를 끌어내는 데 도움이 되는 get 함수를 발견한 사람은 아무도 없었습니다.
Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?문제를 해결해 주셔서 감사합니다.내 게시물 읽기는 내가 필요한 정보를 추출하는 get 기능을 발견하지 못했습니다.
Re: jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?죄송합니다. 여기서 고생하고 있습니다.
왜 evaexpr을 중첩하는지 잘 모르겠습니다.
대체할 방법이 없을까요
Y( dtAggWide<<GET column="" group=""></GET>
열 그룹 목록이 있습니까?
이전에 이 목록을 만들었는데 어떻게 이 RecipeStepIndex를 Y 그룹으로 바꿀 수 있습니까?
//Build and prefill an Array of names of the RecipeStepId
Summarize( dt, RecipeStepIndex = by( :RecipeStepId) );//get list of unique RecipeStepID's

jsl: 그룹 목록을 사용하여 플롯하는 방법은 무엇입니까?이 게시물에서 후속 조치: https://community.jmp.com/t5/Discussions/Script-to-loop-thru-and-group-columns-by-name-dynamically/mp/470274#M71439
10,000개 이상의 열을 StepID로 그룹화하고 있지만 이제 모두 플롯하려고 합니다.
모든 그룹 목록으로 플롯하도록 지시하는 방법을 알 수 없습니다. 어떤 충고?

/*plotting a basic Fit YbyX just to get pValues. Formatting and style done on final plot*/
ow1 = Oneway(
Y( dtAggWide<<GET column="" group=""></GET>
데이터 혼합 및 정리