在新數據表中堆疊組列你好,
我有下一個代碼。在最後幾行中,我嘗試堆疊一些列。問題是,當我運行腳本時,我看到只有1列堆疊,雖然我需要看到多於1(根據代碼中的列表長度)
);<BR /><BR />dt = open("C:\JMPCommunity\DataTableExample.jmp");
s_list = {sen1, sen2, sen3, sen4, sen5};
test_list ={test1, test2, test3};
tokens_list={Col1, Col2, Col3};
g_list={g1,g2,g3};
For(j = 1, j<=Length(test_list), j++,
For( i = 1, i<= Length(s_list), i++,
dt << New Column ( test_list[j] ||"_" || s_list[i],
Numeric,
Continuous,
Formula(
Num(Word( i, As Column(Column(tokens_list[j] )), "|" ))
)
)
);
g_list[j] = dt << Group Columns(:( || test_list[j]|| "_" || s_list[1]), Length(s_list));<BR /> dt << Stack(columns(dt << Get Column Group( g_list[j] );),<BR /> Source Label Column( "Label_" || test_list[j] ),<BR /> Stacked Data Column( "Data_" || test_list[j])<BR /> );<BR />
我的Qs是:
1。如何解決問題。
2。新打開的數據表如何成為新的dt(原始數據不會更新)?
附上一個dt示例
Re:在新數據表中堆疊組列你好,
我認為有一個問題。打開的最後一個表生成的行數多於所需的行數。
例如:我需要的第一個DT堆棧包含10行數據。最後一個DT包含250個數據單元!!
這是X25。現在,實際上,如果我有一個10 ^ 6或更多行的表,它將極其成倍增加,也許計算機數據處理將終止....
根據我附上的示例,我必須得到3個堆疊的Label&Data列,這些列只有10行單元格。
我想到MultipleSeriesStack但不知道如何將它插入到我的代碼中
Re:在新數據表中堆疊組列在糾正在組列中添加':列('(消息)後,腳本似乎工作,除了它創建三個不同的表,每個表都有一組分組列。 如果要繼續向新創建的表添加列(這是我認為您想要的),則需要引用新創建的表。這是一種方法:
Names default to here( 1 );
s_list = {sen1, sen2, sen3, sen4, sen5};
test_list ={test1, test2, test3};
tokens_list={Col1, Col2, Col3};
g_list={g1,g2,g3};
dt = list();
dt[1] = open("C:\Users\a384681\Downloads\DataTableExample.jmp");
For(j = 1, j<=Length(test_list), j++,
For( i = 1, i<= Length(s_list), i++,
dt[j] << New Column ( test_list[j] ||"_" || s_list[i],
Numeric,
Continuous,
Formula(
Num(Word( i, As Column(Column(tokens_list[j] )), "|" ))
)
)
);
g_list[j] = dt[j] << Group Columns(:Column(test_list[j] || "_" || s_list[1]), Length(s_list));
dt[j+1] = dt[j] << Stack(
columns(dt[j] << Get Column Group( g_list[j] );),
Source Label Column( "Label_" || test_list[j] ),
Stacked Data Column( "Data_" || test_list[j])
);
);