查找并识别未分类数据的重复项对于JMP来说还算是新手,所以我对如何使用公式的知识非常有限。
如果我有一列值(字符),并且想将它们标识为另一列中的重复项,那么我将使用什么公式? (我的数据有10列已按其他列的值排序)
过去,我使用下面的公式(当需要重复的数据按字母顺序排序时)。
如果(
Row()== 1,1,
:Column1!=滞后(:Column1),1,
0
)
由于不允许我以输入数据以外的任何其他方式显示已排序的数据,因此我对于如何指示重复项有些困惑。
任何和所有帮助,不胜感激。
数据表回复:查找并识别未排序数据的重复项
也许这条线有帮助
dt =当前数据表();
dt <<选择重复的行(Match(:column_1,:column_2,:column_3));
这将选择在列1至3的上部组合中不是唯一的行。
通过选择,您现在可以删除,隐藏和排除,填充其他列或您要使用的内容。
r_select = dt <<选择行(dt <<获取选定的行); //这将为您提供行号的向量。
r_select <<删除行;
或者
r_select <<隐藏和排除;
回复:查找并识别未排序数据的重复项感谢您的答复。
我认为自己的解释不好。 我想要的是一个帮助程序列,用于指示某个值是否重复,也许用“ 1”表示所有重复,而用“ 0”表示没有重复。 我不想隐藏或删除重复项。
回复:查找并识别未排序数据的重复项下面是使用脚本执行此操作的至少两种方法:
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(7),
Compress File When Saved(1),
New Column("Column 1",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 1, 2, 3, 2, 5, 1]),
Set Display Width(60)
)
);
dt << New column("Dublicate_formula", Numeric, <<FORMULA> 1, 1,0))
);
dt << Select duplicate rows(Match(:column 1));
dubRows = dt << Get Selected Rows;
dt << New Column("Dublicates", Numeric, Nominal);
Column(dt, "Dublicates")[dubRows] = 1;
Column(dt, "Dublicates")[dt << Get Rows Where(IsMissing(:Dublicates))] = 0;</FORMULA>您也可以不使用任何脚本来执行此操作:
- 选择您感兴趣的列。
- 从“行”菜单:“行选择”->“选择重复行”
- 行菜单:行选择->列中的名称选择
- 选择名称,选择为1,未选择为0
回复:查找并识别未排序数据的重复项您也可以使用下面的公式(以Big Class数据表为例)作为公式列来执行此操作
If( Row() == 1,
Current Data Table() << select duplicate rows(
Match( :age, :sex, Empty() )
)
);
If( Selected( Row State( Row() ) ),
"Group 1",
"Group 2"
);
回复:查找并识别未排序数据的重复项非常感谢你。 我无需使用脚本即可进行标记。
感谢你的帮助!
回复:查找并识别未排序数据的重复项这是使用列公式的另一个示例。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Create a column that indicates duplicate names (there are two "Robert")
dt << New Column( "Duplicate", Formula( If( Col Number( Row(), :name ) > 1, 1, 0 ) ) );