嗨,大家好,
我有一个变量“medium”,我需要一个分组变量,所以我为分组“EMEM Medium”创建了另一个变量,如果我用来填充新变量的代码在下面。
Match( :Medium,
"Standard", "Standard",
"Standard 1", "Standard",
"Standard 2", "Standard",
"Standard 3", "Standard",
"Standard 4", "Standard",
"Standard 5", "Standard",
"Standard 6", "Standard",
"Sigma", "Sigma",
"Sigma 1", "Sigma",
"Sigma 2", "Sigma",
"Sigma 3", "Sigma",
"Sigma 4", "Sigma",
"Sigma 5", "Sigma",
"Sigma 6", "Sigma",
"else", -9999)只是想知道是否可以使用通配符 l 或其他方法来使语法更加紧凑和可读。
谢谢
米克
我认为匹配是不可能的,请参阅:
比赛 (jmp.com)
但是你可以在这种情况下使用 word ,它更简单:
Names Default To Here( 1 );
dt = New Table( "test",
New Column( "Medium","Character",
set values(
{"Standard", "Standard 1", "Standard 2", "Standard 3", "Standard 4", "Standard 5", "Standard 6", "Sigma", "Sigma 1", "Sigma 2", "Sigma 3",
"Sigma 4", "Sigma 5", "Sigma 6"}
)
)
);
dt << New Column( "Match", "Character",
formula(
Match( :Medium,
"Standard", "Standard",
"Standard 1", "Standard",
"Standard 2", "Standard",
"Standard 3", "Standard",
"Standard 4", "Standard",
"Standard 5", "Standard",
"Standard 6", "Standard",
"Sigma", "Sigma",
"Sigma 1", "Sigma",
"Sigma 2", "Sigma",
"Sigma 3", "Sigma",
"Sigma 4", "Sigma",
"Sigma 5", "Sigma",
"Sigma 6", "Sigma",
"else", -9999
)
)
);
dt << New Column( "Word", "Character",
formula(
word(1, :Medium)
)
);JMP 还可以创建如下所示的 Word 列@Georg交互方式(可能需要对不匹配进行一些额外的处理)。
右键单击列标题并创建新的公式列:

或使用重新编码:


太棒了,谢谢Georg,也谢谢jthi,感谢回复,谢谢你们俩