格式化时间列的困难大家好!
我有一个包含日期和时间的 CSV 文件,已上传到 JMP 中。为了创建包含日期/时间的单个列,我需要转换包含日期的列的数据类型和格式。
当我使用脚本时:
Column("Actual Harvest Time") << Data Type(Numeric); << Format("h:m")
它完全清除该列中的所有数据。
我还了解到,当我手动将列建模类型更改为数字并单击“应用”时,数据就会被清除。如果我手动将列更改为数字,同时将格式更改为“h:m”并单击“应用”,则格式将成功更改。
我正在寻找一种方法来自动设置时间列的格式而不丢失任何数据。有没有办法在不清除我所有数据的情况下执行此操作?
我附上了手动列格式更改的屏幕截图以供参考。
回复:格式化时间列的困难是的,如果您首先更改数据类型,那么您会丢失这些值。 您必须同时提供原始字符串版本的日期和时间格式。 然后JMP就可以将字符串转换为对应的数值。
以下是数据列 message << Data Type() 的脚本索引条目中的示例:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << New Column( "Time",
"Character",
"Nominal",
Set Values( {"13:32", "20:10", "20:12", "14:56"} )
);
Wait( 2 );
dt:Time << Data Type( Numeric, Format( "h:m", 12 ), Input Format( "h:m" ) );
dt:Time << Modeling Type( "Continuous" );回复:格式化时间列的困难我重复了您的发现,JMP 14 和 JMP 15 的结果相同。我想您必须在 JSL 中创建一个新列才能执行您想要的操作。
names default to Here(1);
dt = New Table( "file",
New Column( "a", character, values({"11:02"})));
dt<<NEW column=""></NEW>