重新编码窗口:默认为“就地”我正在使用 JSL 来帮助用户进行批量重新编码,但是当我总是想“就地”重新编码时,“重新编码”窗口总是以“新列”作为默认行为打开。
无论如何,是否可以通过类似dt<<重新编码(默认(“就地”)) ,或首选项中某处的一个选项,用于更改重新编码窗口的默认设置。
(旁注:我认识到通过此窗口创建新列的用处,但“重新编码”默认为“就地”以外的任何内容有点奇怪)
回复:重新编码窗口:默认为“就地”您对带有公式或脚本的表格提出了很好的观点。 在那种情况下,先制作隐藏的备份列,然后在原地重新编码,就很有意义了! 这是执行此类操作的代码片段(以名为“age”的列为例)
col = column("age");
Eval(col << Get script) << set name(col<<GET name=""></GET>
将隐藏的备份列作为 Recode 本身的一个选项可能对某些人来说真的很有用。 我鼓励您将您的建议复制到JMP 愿望清单所以我们的开发人员看到了。
朱利安
回复:重新编码窗口:默认为“就地”谢谢,朱利安,我会从那里开始:)
我仍然不同意“新列”是默认设置的最佳选择。
如果我重新编码对于附加到数据表和/或引用感兴趣列的公式列的脚本必不可少的列,那么我必须执行以下两项操作之一:
- 浏览脚本/公式并将旧列名换成新列名
- 正如 Julian 所说,立即隐藏并重命名原始 (*_BackUp),然后将新列名称更改为原始列名称
尽管这些选项可能相对轻松,但它们并不能很好地利用用户的时间(尤其是当您的用户容易忘记诸如此类的小细节时),我们可以轻松地找到一个解决方案,同时消除对这两个选项的需求并且仍然为您提供安全的备用柱。
如何? 我更希望看到的是“In Place”是该窗口的默认设置(如果我没记错的话,它反映了以前版本的重新编码功能),然后窗口中的一个新复选框(默认为 True?)用于“Create Hidden Back” -Up Column”,这会自动为我创建 *_BackUp 列(现在我不必更新任何脚本/公式或花时间手动调整列名称)。
回复:重新编码窗口:默认为“就地”你好@ABI ,
我会回应@马克贝利并说通过重新编码到新列中来保留原始值是一种很好的做法(如果只是为了允许用户撤消错误的话)。 在像这样的脚本案例中,我发现自己允许 Recode 创建新列,但会立即隐藏并重命名原始列,然后重命名新列以取代原始列。 就最终用户而言,这是一个重新编码,但他们有那个隐藏的原始列作为备份。
也就是说,如果您需要将重新编码对话框更改为“就地”,您可以通过向窗口的组合框发送消息来实现。 这是一个硬引用窗口的快速示例(因为 var = dt << recode 不会将窗口引用返回给 var):
Window(1)[ComboBox(1)]<<SET></SET>
希望这能让你更接近一点?
朱利安
回复:重新编码窗口:默认为“就地”如果您在默认的“就地”目的地被认为是危险的许多区域之一工作,那一点也不奇怪。 JMP 决定在安全方面犯错误。
脚本索引显示 << Recode 消息此时不带任何参数:
