用字符串替换数字嘿,
我有一个 COL_A 列,它有 31 行用于 1 - 31 之间的 wach 编号(31 行 1、31 行 2 .... 等),我想以特定顺序用 31 个字符串替换这些数字,对于例子:
如果我的字符串是这样的:马,猫,狗......等,我想用马代替1,用猫代替2,用狗代替3......,什么是最好和最快的方法做吗?
回复:用字符串替换数字(也同意重新编码。)
这个脚本可能看起来像这样
dt = Open( "$sample_data/big class.jmp" );
dt << New Column( "group", character );
label = {"baby", "toddler", "toddler", "pre-k", "k", "1st", "2nd", "3rd", "4th", "5th", "6th", "middle", "middle", "middle", "high", "high", "high"};
For Each Row( group = label[age] );
Grouped agesGrouped ages分组年龄
如果您的数据不连续、从一个开始或只有几个组,则 if-then-else 方法可能会更好。
回复:用字符串替换数字我同意 Recode ...但根据您的使用情况,还有其他选择:
1. 一个带有 If-Then-Else 语句的脚本......所以你会有 If C1=="1" Then "Horse" 等等。即使是 31 岁,这也会变得很麻烦……但有可能。我通常只会将它用于最多约 6 个项目。
2. LinkID/LinkReference 表。我经常使用这个——我们在开发线上进行了大量的实验(我是一个快乐/忙碌的统计学家:) ) 在我们生成的零件上使用条件键完成为字母 AZ,依此类推。在进行设置时,我总是有一个核心表,然后随机化一列中的条件和其他列中的条件。 条件是一个 LinkID
由于我们做了很多测试,所以在结果中我们只使用 Condition ID (AZ) 和任何特定的测试信息(例如,我们在哪里获取数据),然后在结果表中的 Condition 上使用 LinkReference 回到实验条件表。难以置信的强大!
在您的情况下,您可以简单地拥有一个包含 1-31 的列,以及一个包含值 Horse、Cat、Dog 等的第二列。然后使用 LinkIDReference 功能来获取这些值。
回复:用字符串替换数字我相信进行此更改的最快方法是使用“重新编码”。
转到要更改其值的列的列标题,然后右键单击标题并选择“重新编码”