JSL如何通過表達式重命名列名你好
我有一個由摘要統計信息生成的列名稱的列表。 我想刪除所有僅保留我想要的部分的前綴和sufix。我如何在JSL中做到這一點?
列
佔總數的百分比(UP9019-01)=> UP9019-01
佔總數的百分比(UP9019-02)=> UP9019-02
佔總數的百分比(UP9019-03)=> UP9019-03
.....
腳本編寫回复:JSL如何通過表達式重命名列名我要處理的第一種方法是使摘要平台名稱的輸出列與輸入列的名稱相同。通過指定
統計列名稱格式(“ column”)
可從“摘要平台輸入”對話框中選擇
如果您不能這樣做,那麼所有要做的就是使用此JSL重置列名
:Name("% of Total(UP9010-01)") << set name( "UP9019-01: );
如果這需要自動化而不是硬編碼,並且此列是數據表中的第一列,則可以使用此JSL進行處理
column(1) << set name(word(2,column(1)<<GET name=""></GET>
回复:JSL如何通過表達式重命名列名這是一個使用“統計列名稱格式(“ column”)”選項的簡單示例,顯示了名為原始列名稱的Total列的百分比

names default to here(1);
dt=open("$SAMPLE_DATA/big class.jmp");
Data Table( "big class" ) << Summary(
Group( :age ),
Name( "% of Total" )(:height),
Name( "% of Total" )(:weight),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column" ),
Link to original data table( 0 )
);回复:JSL如何通過表達式重命名列名嗨納爾遜,
感謝您的提示。 指定靜態列名稱格式(“列”)的第一個選項不起作用。 它仍然在表中包含總計的百分比。
您建議的JSL選項可以完美地工作!
ColList = dt_source << get column names( string );
//% of Total(UP9019-01)
For( i = 4, i <= N Items( ColList ), i++,
Column( i ) << set name( Word( 2, Column( i ) << get name, "()" ) )
);Re: JSL 如何通過表達式重命名列名嗨納爾遜,
如果您不使用子組,統計列名稱將起作用。 就我而言,我需要使用子組。 總數的百分比仍將附加到子組