变换列大家好,当我想将此列转换为日期时,我遇到了一个问题。我将其转换为数字,然后转换为日期,但当我将其转换为日期时,年份变成了 1904 年,我不知道为什么?


高级统计建模数据混合和清理视窗回复:变换列使用我之前提供的公式创建新公式,您应该得到如下结果:

然后将格式更改为最适合您的格式

您可以就地执行此操作,但我建议:
- 创建新的公式列
- 改变格式
- 验证一切如您所愿
- 如果不需要,请删除旧列
- 重命名新列
如果您必须经常这样做,那么我会考虑使用 JSL 并编写脚本(我认为 JMP16 中的 Activity Recorder/Enhanced Log 可以记录所有这些步骤以使脚本编写非常简单)。
回复:变换列尝试
column(dt, "Operation Start Date" ) << Input Format( "yyyymmdd");
回复:变换列我知道,但当我这样做时,什么也没有发生


回复:变换列@jthi和@马克贝利给了你一些很好的信息。 如果您想了解有关 JMP 如何处理日期的更多信息,请参阅:在 JMP 中使用日期、时间、日期时间和持续时间
回复:变换列原因是 JMP 使用自 1904 年 1 月 1 日凌晨 12:00 起的秒数作为时间值的基础。 您的数字是对年、月和日进行编码的整数。 JMP 具有许多用于处理日期和时间值的内置函数。 因此@jthi的解决方案就是这么简单。
回复:变换列您可以尝试使用 Informat() 创建公式列,然后根据需要设置格式。 如果起始值不是字符,则在列引用周围添加 Char()
Informat("20210408", "YYYYMMDD");
Informat(Char(:ColumnToConvert), "YYYYMMDD");