DATETIMEとMESSAGEの2つの列を持つテーブルがあります。メッセージ列は最大60文字です。
テーブルには〜300万行がありますが、これは多くのファイルと同じデータの連結であるため、多くの重複行があります。重複する行をできるだけ早く削除しようとしていますが、JMP 12.2.0では問題なく動作しました。
JMP 12.2.0では、サマリーに約8秒かかります。
JMP 14.3.0では、プロセスを30分以上強制終了したため、サマリに時間がかかります。
dt2 = dt << Summary( Group( :DATETIME, :MESSAGE ), Invisible, Link to original Data Table( 0 ), Table Name( "MessageTable" ) );
回避策を見つけましたが、約16秒かかります。
1つのグループのみでSummaryが正常に機能するようです。複数のグループを使用すると、パフォーマンスが著しく低下します。
そのため、テーブルを1列にし、サマリーの後に列を解析しました。
かなりいですが、動作します。
dt << New Column( "KEY", Character, Formula( Char( :DATETIME ) || "@" || :MESSAGE ) );
dt2 = dt << Summary( Group( :KEY ), Invisible, Link to original Data Table( 0 ), TableName( "MessageTable" ) );
dt2 << New Column( "DateTime", Numeric, Format( "y/m/d h:m:s" ), Formula( Num( Words( :KEY, "@" )[1] ) ) );
dt2 << New Column( "Message", Character, Formula( Words( :KEY, "@" )[2] ) );
dt2:DateTime << Delete Formula;
dt2:Message << Delete Formula;
dt2 << Delete Columns( {"KEY", "N Rows"} );