在 JMP 中,从高表中生成向量列的最快方法是什么?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
// Data table summary
// → Data Table( "Summary of Big Class Families grouped by age etc." )
tmp = dt << Summary( Group( :age, :sex, :height, :weight ) );
// New formula columns
tmp << New Column( "Rank", Formula( Col Rank( 1, :age, :sex ) ) );
// Split data table
// → Data Table(
// "Split of Summary of Big Class Families grouped by age etc. by Rank[age]"
// )
final = tmp << Split( Split By( :Rank ), Split( :height, :weight ), Group( :age, :sex ) );
final << New Column( "heights",
Expression,
set each value(
Matrix( {:height 1, :height 2, :height 3, :height 4, :height 5, :height 6} )
)
);
final << New Column( "weights",
Expression,
set each value(
Matrix( {:weight 1, :weight 2, :weight 3, :weight 4, :weight 5, :weight 6} )
)
);
final << Delete Columns({:height 1, :height 2, :height 3, :height 4, :height 5, :height 6,:weight 1, :weight 2, :weight 3, :weight 4, :weight 5, :weight 6})
注:我不需要缺失的条目。
我最初的猜测是使用某种循环来获取每一行的匹配行,并使用数据表下标来获取/设置值。