大家好,
我想知道如何根據參考列引用特定列中的值。這個概念就像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" )}
)
)
);在我的腦海中,它將獲取按分組中 :Description 的當前值,然後在「閾值 (nA)」列中找到閾值的相應值。但我不確定如何做到這一點。
一個更簡單的例子是:
數據表示例:
ABC
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 值的水平線。到目前為止,我不確定如何獲取該值並將其插入上面的程式碼中,以按描述獲取動態水平線作為我的「按分組」。任何幫助將不勝感激。謝謝!
這是基於單獨列添加參考線的一種方法的一個小示例
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,
我沒有正確理解如何在每個函數中使用 bygroup。 感謝代碼片段,這正是我所希望的。 感謝您的幫助!
尊敬,
尼爾·斯雷詹