任意重新编码脚本我有一个具有未知数量级别的字符变量。 级别有很长的文本名称,我想将它们重新编码为更短的内容,例如只有1,2,3等...
我理解如何使用Match将一组给定的级别重新编码为其他特定值,但是如果初始集未知,我想询问如何执行此操作。 也就是说,对于每个新数据文件,要重新编码的变量可以具有不同数量的不同条目。
谢谢!
Re:任意重新编码脚本A-HA!我认为“dt =”是不寻常的。 原来我通过写“dt2 =”来解决它。 可能有点低效但它有效。 我已经将它改为“dt <<”,它的效果也很好。
再次感谢!
Re:任意重新编码脚本哎呀,
新列声明应该是
dt << New Column(.................
Re:任意重新编码脚本PS。,似乎某种方式dt被分配了新列。 dt不再引用原始数据表。 是对的吗?
Re:任意重新编码脚本好像我很快就说了...... 该代码正在创建所需的新变量,但现在我的所有代码都无效。 特别是我试图移动新变量,然后排除一些行。 我的移动和排除之前工作正常,但现在新变量被排除和隐藏?
有什么东西需要重新设置或关闭吗?(顺便说一句,我使用的是版本12)
谢谢!
Re:任意重新编码脚本这很棒!非常感谢!
Re:任意重新编码脚本这是一小段JSL,它给出了一个从列中找到的字符值创建数值的示例
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Animals.jmp" );
dt = New Column( "Animal Category",
formula(
If( Row() == 1,
Summarize( bygroup = by( :species ) )
);
Loc( bygroup, :species )[1];
)
);