JSL 根据用户选择重命名列我正在尝试根据用户选择的文件重命名列名。 但是,我在重命名列时遇到了麻烦。 我已经添加了我的代码,设置名称不适用于重命名。 我想我做错了什么。 任何人都可以让我知道这件事吗?
Clear Log();
dt1_dir = Pick Directory( "Select directory for data table 1" );
dt1_Name = Pick File( "Select data file 1", dt1_dir, {"JMP Files|jmp;jsl;jrn", "All Files|*"}, 1, 0, 0 );
Show( dt1_Name );
dt = Open( dt1_Name );
Show( dt );
dt<< bring window to front;
box = column dialog(
a=collist("BDATE", MAX col(1), min col(1),DataType ("Numeric")),
b=collist("SHIPDATE", MAX col(1), min col(1), DataType ("Numeric")),
c=collist("BUY Date", MAX col(1),min col(1), DataType ("Numeric")),
);
box["a"] << set name("build date")
box["b"] << set name("shipping date")
box["c"] << set name("buy date")分析数据表脚本视窗回复:JSL 根据用户选择重命名列box["a"]
返回一个 JMP 列表,
{:NPN1}
不是字符串或表达式。因此,您需要从列表中正确提取元素,并将其作为列呈现给 JSL
as column((box["a"])[1]) << Set Name( :build date" );
这是您需要进行的修改以进行名称更改
as column((box["a"])[1]) << set name( "build date" );
as column((box["b"])[1]) << set name( "shipping date" );
as column((box["c"])[1]) << set name( "buy date" );
回复:JSL 根据用户选择重命名列你好@shasha_2 ,
我不是 100% 确定你想要做什么以及你打算如何使用 Column Dialog() 命令,但下面的脚本会做你想做的事。 它还为您在新窗口中的选项等方面提供了更大的灵活性。如果您想使窗口模式化,只需在此处添加 <
Names Default To Here( 1 );
bwidth = 100;
dt = New Table("test",
Add Rows(3),
New Column("Col 1", Continuous),
New Column("Col 2", Continuous),
New Column("Col 3", Continuous)
);
dt << bring window to front;
box_win = New Window( "Select Columns",
H List Box(
Panel Box( "Select Columns", ColListData = Col List Box( dt, All, Grouped, width( bwidth ), nLines( 5 ) ) ),
V List Box(
Panel Box( "Case Selected Columns Into Roles",
Lineup Box( N Col( 2 ), Spacing( 3 ),
Button Box( "BDATE", colLista << Append( ColListData << Get Selected ) ),
ColLista = Col List Box( width( bwidth ), N Lines( 1 ), Max Items( 1 ), Min Items( 1 ), <<SET data="https://community.jmp.com/" type=""></SET>希望这可以帮助,
DS