안녕하세요 여러분,
참조 열을 기준으로 특정 열의 값을 참조할 수 있는 방법이 궁금합니다. 개념은 Excel의 VLOOKUP과 같습니다. 이름이 있는 데이터 테이블이 있고 해당 특정 이름에 대한 고유한 임계값이 있습니다.
Variability Chart(
Y( :Signal ),
X( :Expected Outcome, :Sample Mix, :Consumable ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( Name( "Choose best analysis (EMS REML Bayesian)" ) ),
Process Variation( 0 ),
Show Range Bars( 0 ),
Show Cell Means( 0 ),
Std Dev Chart( 0 ),
Points Jittered( 1 ),
Show Box Plot Whisker Bars( 0 ),
Mean Diamonds( 0 ),
By( :Description ),
SendToReport(
Dispatch(
{"Variability Chart for Signal"},
"2",
ScaleBox,
{Scale( "Log" ), Min( 0.01 ), Max( 1250 ), Inc( 1 ), Minor Ticks( 8 ), Add Ref Line( 0, Dotted, "Medium Light Gray" ),
Add Ref Line( <STRONG>***[5/(변동성 차트의 기준 기준에 따른 값이기를 원함]***</STRONG>, Dotted, "Black" ), Rotated Labels( "Horizontal" )}
)
)
);내 머릿속에서는 By 그룹화에서 :Description의 현재 값을 가져온 다음 "임계값(nA)" 열에서 해당 임계값을 찾습니다. 하지만 이 작업을 수행하는 방법을 잘 모르겠습니다.
더 간단한 예는 다음과 같습니다.
예제 데이터 테이블:
알파벳
1 2 3
1 4 3
2 6 5
2 7 5
3 4 4
4 9 4
내 가변성 그래프는 B를 y축으로 표시하지만 My By를 기반으로 수평선을 원합니다. 이 경우 A는 1, 2, 3이 됩니다. 따라서 세 개의 가변성 그래프에는 각각 3, 5, 4가 있습니다. A의 값을 기반으로 한 수평선. 지금으로서는 이 값을 구하고 이를 위의 코드에 연결하여 By 그룹화로 설명하여 동적 수평선을 얻는 방법을 잘 모르겠습니다. 어떤 도움이라도 대단히 감사하겠습니다. 감사해요!
다음은 별도의 열을 기반으로 참조선을 추가하는 한 가지 방법에 대한 간단한 예입니다.
names default to here(1);
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
// Add a column that has the value for the reference line to be written
dt << new column("Ref", set each value(If(:sex=="F", 60,65)));
vc = Variability Chart(
Y( :height ),
Model( "Main Effect" ),
X( :age ),
by( :sex )
);
summarize( dt, group = by( :sex), value = mean(:ref));
for each( {bygroup,i}, value,
report(vc[i])[AxisBox(1)] << add ref line(value[i],"solid","red", format(value[i], "fixed dec", 6,1))
);
txnelson님, 감사합니다.
각 기능에 대해 a에서 bygroup을 사용하는 방법을 제대로 이해하지 못했습니다. 코드 스니펫에 감사드립니다. 이것이 바로 제가 원했던 것입니다. 도움을 주셔서 감사합니다!
공손히,
닐 스레잔