你好,
我正在处理一个数据表,其中的日期格式如下: 15/09/08/19:12 。
我设法使用数据表编辑器中的自定义格式功能将其转换为以下内容://
- /<::> 但通过脚本我无法弄清楚如何让这个工作。
以下是脚本的发挥,任何帮助将不胜感激。
最好的祝福,
卢克
path = Get Default Directory();
dt = Pick File("Select .csv file with data", path, {"Excel|csv;xlsx;xls", "JMP Files|jmp;jsl;jrn", "All Files|*"}, 1, 0, "");
Open(dt,
columns(
New Column( "; DateTime", Numeric, "Continuous", Format( "y/m/d h:m"),Input Format( "<YY>/<MM>/<DL><DD>/<HH24><::><MM>", 3 )),
New Column( "Machine ID", Character, "Nominal" ),
New Column( "Z/Xrmv_max", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Z/Xrmv_min", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Z/Xrmv_max-min", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "P/Xrmv_max", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "P/Xrmv_min", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "P/Xrmv_max-min", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Comma, CSV( 1 ) ),
Strip Quotes( 0 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 1 ),
Data Starts( 2 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
);
<BR /><P><A href="https://community.jmp.com/t5/c-kvoqx44227/JMP/pd-p/jmp" class="lia-product-mention" data-product="1-1" target="_blank">JMP</A></P></MM><LINGO-LABS id="lingo-labs-409162" slang="en-US" mode="NONE"><LINGO-LABEL>分析</LINGO-LABEL><LINGO-LABEL>数据表</LINGO-LABEL><LINGO-LABEL>脚本编写</LINGO-LABEL><LINGO-LABEL>视窗</LINGO-LABEL></LINGO-LABS></HH24></DD></DL></MM></YY>使用格式模式时的语法有点不同。 尝试类似:
Format("y/m/d h:m"),
Input Format("Format Pattern", "<YY>/<MM>/<DL><DD>/<HH24><::><MM>")<P>示例表</P><PRE><CODE class=" language-jsl">New Table("Untitled",
Add Rows(1),
New Column("Column 1",
Numeric,
"Nominal",
Format("y/m/d h:m"),
Input Format("Format Pattern", "<YY>/<MM>/</MM></YY>/<::>"),
Set Selected,
Set Values([3061825920]),
Set Display Width(89)
)
);谢谢@jthi ,
我仍然遇到列仍然给出空结果的问题:

该列正在更改为所需的格式,就像手动执行一样。 可能是因为原始列名称没有更改,因为名称是“;架构定义”?
再次感谢。
如果您首先尝试将其作为字符导入,它会是什么样子? 只有空单元格?
New Column( "; DateTime", Character, "Nominal),