如何创建避免重复的新表。在 JMP Pro 16.0 中,我有一张包含三列和多行的表格。这些列的名称为:ID、金额和结果。ID 值是字符,而金额和结果值是数字。在某些情况下,ID 是一个唯一的 ID 代码,例如 3333。在某些情况下,相同的 ID(例如 3334)在多行中重复,每行都有其唯一的金额和结果值。
我想创建一个新表,其中包含唯一的 ID 代码,包括金额和结果的值。但是,如果有重复的 ID 代码,我只想包含 ID、金额和结果,其中 ID 的金额值和结果值最低。
非常感谢您告诉我该怎么做。我处于高级业余水平,知道如何编写 JSL 脚本。
您忠诚的
拉斯·伊诺克森
外科教授
卡罗林斯卡学院
斯德哥尔摩,
瑞典
基础数据分析与建模数据探索与可视化macOS回复:如何创建避免重复的新表。这是一个小脚本,似乎可以做你想做的事
Names Default To Here( 1 );
dt = Current Data Table();
dt << select where( :amount == Col Min( :amount, :id ) );
dtFinal = dt << subset(
selected rows( 1 ),
selected columns( 0 ),
output table( "Final" )
);

回复:如何创建避免重复的新表。另一种方法(不一定更简单,但可能更容易,并且不需要编写脚本)是使用 Tabulate 并将 ID 作为行,并在表体中使用最小金额。然后制作成数据表,然后将其重新连接到原始表,删除表中的倍数,但引入结果列。在连接表中,匹配 ID 和金额列。
回复:如何创建避免重复的新表。谢谢你的快速回答。但是,它并没有完全解决问题。问题是,如果我有这样的表格
ID 金额 结果
约翰福音 10 20
乔治 5 43
乔治 10 24
乔治 15 32
马特 40 60
马特 70 35
我想创建一个具有唯一 ID 以及最低金额和相应结果编号的新表。新表应如下所示
ID 金额 结果
约翰福音 10 20
乔治 5 43
马特 40 60
您忠诚的
拉尔斯
回复:如何创建避免重复的新表。你好,Lars,
回答您的问题 - 虽然这可以通过脚本完成,但这不是必需的。
列公式可以创建一个指标。从中选择匹配项,其中 Flag=1。然后是表格菜单 >子集,选定行....
我将使用示例数据文件 Big Class,其中“Age”作为有重复项的 ID。这是一个序数值,但相同的公式适用于字符。
我们将在相似“年龄”的组中标记最小“身高”,就像您查找每个“ID”的最小“金额”一样

可以使用工作流生成器记录这些步骤以制作脚本。
回复:如何创建避免重复的新表。请参阅表格 > 摘要命令的文档。您可以简单地通过 ID 询问最小值。