<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我有一个脚本( 下面) 打开多个数据表并在每个表上运行脚本然后将它们连接在一起(水平连接)。我现在遇到的问题是我在代码中将表追加/连接在一起的最后一部分。我的代码当前一起加入表中,但是在连接了2个并发数据表之后,第三个数据表的列中包含名称连接的监视狗,而不是保留它打开的表的名称。我得到的例子如下所示:
| 车型1 | 车型2 | 汽车类型的连锁手表H. | 车型4 | 车型连锁手表H2 | 车型6 |
|---|
| | | | | |
相反,我希望这是我想要的首选结果:
谢谢
名称默认为此处 ( 1 ) ;
//使用'PickFile()'获取要打开的文件列表(仅限Windows)
的fileList = 选择文件 (
“选择一个或多个文件” , //提示
“$桌面” , //初始文件夹
{ “JMP文件| jmp; jsl; jrn; csv” , “所有文件| *” } , //要应用的文件过滤器列表(由OS / X忽略)
1 , //要应用的初始文件过滤器(上面列表中的项目索引)
0 , //保存标志 - 指定“保存”或“打开”窗口。分别设置值1或0。
空 () , //默认文件
多 // Multiple - 如果'Save Flag'= 0,则使用值1允许打开多个文件(OS / X忽略)
) ;
//如果只选择了一个文件,则fileList将不是列表,因此我们需要为自己构建它
如果 ( !是列表 ( 的fileList ) ,
的fileList = 评估列表 ( { 的fileList } )
) ;
//打开文件并存储相应的JMP表名
表名 = {} ;
对于 ( F = 1 , F <= N项 ( 的fileList ) , F ++,
dttemp = 打开 ( 的fileList [ F ] ) ;
插入 ( 表名 , dttemp << 的getName ) ;
dttemp = 当前数据表 () ;
//根据获得的valeus创建新列并添加颜色编码属性
dttemp << 新栏目 ( “最大”。 ,数字 ,连续 ,格式 ( “最好” ,五 ) , << 添加列属性 ( 设置属性 ( “价值颜色” , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) ,颜色单元格的价值 ) , << 设置属性 ( “缺少价值代码” , { 0 } )) ;
dttemp << 新栏目 ( “最小”。 ,数字 ,连续 ,格式 ( “最好” ,五 ) , << 添加列属性 ( 设置属性 ( “价值颜色” , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) ,颜色单元格的价值 ) , << 设置属性 ( “缺少价值代码” , { 0 } )) ;
dttemp << 新栏目 ( “放大器”。 ,数字 ,连续 ,格式 ( “最好” ,五 ) , << 添加列属性 ( 设置属性 ( “价值颜色” , { 0 = 3 , 1 = 3 , 2 = 9 , 3 = 4 }) ,颜色单元格的价值 ) , << 设置属性 ( “缺少价值代码” , { 0 } )) ;
dttemp << 新栏目 ( “真正/型号。” ,数字 ,连续 ,格式 ( “最好” ,五 ) , << 添加列属性 ( 设置属性 ( “价值颜色” , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) ,颜色单元格的价值 ) , << 设置属性 ( “缺少价值代码” , { 0 } )) ;
dttemp << 新栏目 ( “OSC”。 ,数字 ,连续 ,格式 ( “最好” ,五 ) , << 添加列属性 ( 设置属性 ( “价值颜色” , { 0 = 4 , 1 = 4 , 2 = 9 , 3 = 3 }) ,颜色单元格的价值 ) , << 设置属性 ( “缺少价值代码” , { 0 } )) ;
对于 ( 一世 = 1 ,一世 <= N行 ( dttemp ) ,一世 ++,
如果 ( : “Max.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Max.GPM / GSF” ) + ( Col Maximum ( : “Max.GPM / GSF” ) - (( Col Maximum ( : “Max.GPM / GSF” ) + Col Mean ( : “Max.GPM / GSF” )) * 1 / 2 )) * 1 / 2 ) ,: “最大”。 [ 一世 ] = 3 ,
如果 ( : “Max.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Max.GPM / GSF” ) - ( Col Mean ( : “Max.GPM / GSF” ) - 最低限度 ( : “Max.GPM / GSF” )) * 1 / 2 ) ,: “最大”。 [ 一世 ] = 2 ,
如果 ( : “Max.GPM / GSF” [ 一世 ] <= ( Col Mean ( : “Max.GPM / GSF” ) - ( Col Mean ( : “Max.GPM / GSF” ) - 最低限度 ( : “Max.GPM / GSF” )) * 1 / 2 ) ,
: “最大”。 [ 一世 ] = 1 ,
: “最大”。 [ 一世 ] = 0 ,
)
)
) ;
如果 ( : “Min.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Min.GPM / GSF” ) + ( Col Maximum ( : “Min.GPM / GSF” ) - (( Col Maximum ( : “Min.GPM / GSF” ) + Col Mean ( : “Min.GPM / GSF” )) * 1 / 2 )) * 1 / 2 ) ,: “最小”。 [ 一世 ] = 3 ,
如果 ( : “Min.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Min.GPM / GSF” ) - ( Col Mean ( : “Min.GPM / GSF” ) - 最低限度 ( : “Min.GPM / GSF” )) * 1 / 2 ) ,: “最小”。 [ 一世 ] = 2 ,
如果 ( : “Min.GPM / GSF” [ 一世 ] > 最低限度 ( : “Min.GPM / GSF” ) ,
: “最小”。 [ 一世 ] = 1 ,
: “最小”。 [ 一世 ] = 0
)
)
) ;
如果 ( : “Amp.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Amp.GPM / GSF” ) + ( Col Maximum ( : “Amp.GPM / GSF” ) - (( Col Maximum ( : “Amp.GPM / GSF” ) + Col Mean ( : “Amp.GPM / GSF” )) * 1 / 2 )) * 1 / 2 ) ,: “放大器”。 [ 一世 ] = 1 ,
如果 ( : “Amp.GPM / GSF” [ 一世 ] > ( Col Mean ( : “Amp.GPM / GSF” ) - ( Col Mean ( : “Amp.GPM / GSF” ) - 最低限度 ( : “Amp.GPM / GSF” )) * 1 / 2 ) ,: “放大器”。 [ 一世 ] = 2 ,
如果 ( : “Amp.GPM / GSF” [ 一世 ] > 最低限度 ( : “Amp.GPM / GSF” ) ,
: “放大器”。 [ 一世 ] = 3 ,
: “放大器”。 [ 一世 ] = 0
)
) ;
) ;
如果 ( : “真正/型号” [ 一世 ] > ( Col Mean ( : “真正/型号” ) + ( Col Maximum ( : “真正/型号” ) - (( Col Maximum ( : “真正/型号” ) + Col Mean ( : “真正/型号” )) * 1 / 2 )) * 1 / 2 ) ,: “真正/型号。” [ 一世 ] = 3 ,
如果 ( : “真正/型号” [ 一世 ] > ( Col Mean ( : “真正/型号” ) - ( Col Mean ( : “真正/型号” ) - 最低限度 ( : “真正/型号” )) * 1 / 2 ) ,: “真正/型号。” [ 一世 ] = 2 ,
如果 ( : “真正/型号” [ 一世 ] > 最低限度 ( : “真正/型号” ) ,
: “真正/型号。” [ 一世 ] = 1 ,
: “真正/型号。” [ 一世 ] = 0
)
)
) ;
如果 ( : “ST-开发。” [ 一世 ] > ( Col Mean ( : “ST-开发。” ) + ( Col Maximum ( : “ST-开发。” ) - (( Col Maximum ( : “ST-开发。” ) + Col Mean ( : “ST-开发。” )) * 1 / 2 )) * 1 / 2 ) , : “OSC”。 [ 一世 ] = 3 ,
如果 ( : “ST-开发。” [ 一世 ] > ( Col Mean ( : “ST-开发。” ) - ( Col Mean ( : “ST-开发。” ) - 最低限度 ( : “ST-开发。” )) * 1 / 2 ) , : “OSC”。 [ 一世 ] = 2 ,
如果 ( : “ST-开发。” [ 一世 ] > 最低限度 ( : “ST-开发。” ) ,
: “OSC”。 [ 一世 ] = 1 ,
: “OSC”。 [ 一世 ] = 0
)
)
) ;
) ;
dttemp << 新栏目 ( “GPM(天)/ GSF” ,数字 ,连续 ,格式 ( “最好” ,五 ) ,式 ( : “Max.GPM / GSF” * 12 ) ) ;
//权重给定
W1 = 1 ;
W2 = 1 ;
W3 = 0.5 ;
W4 = 0 ;
W5 = 0.5 ;
dttemp << 新栏目 ( “Total_Vs” ,数字 ,连续 ,格式 ( “最好” ,五 ) ,
式 ( : “最大”。 * W1 + : “最小”。 * W2 + : “放大器”。 * W3 + : “真正/型号” * W4 + : “OSC”。 * W5 ) ,
<< 添加列属性 ( 设置属性 ( “价值颜色” , { 对于 ( 一世 = 1 ,一世 <= N行 ( dttemp ) ,一世 ++,
如果 ( 柱 ( dttemp , “Total_Vs” ) 一世 ] > = 8 ,柱 ( dttemp , “最后结果” ) << 彩色细胞 ( 红色 , { 一世 } ) ,
柱 ( dttemp , “Total_Vs” ) 一世 ] > = 4 ,柱 ( dttemp , “最后结果” ) << 彩色细胞 ( 黄色 , { 一世 } ) ,
柱 ( dttemp , “Total_Vs” ) << 彩色细胞 ( 绿色 , { 一世 } )
) )} ) ,颜色单元格的价值 )
) ;
//删除列
dttemp = 当前数据表 () ;
柱 ( dttemp , “绿线” ) << 隐藏 ( 1 ) ;
dttemp = 当前数据表 () ;
柱 ( dttemp , “GreenLineIdx” ) << 隐藏 ( 1 ) ;
//将数据表附加在一起
如果 ( F == 1 ,
DT = dttemp ,
DTX = DT << 加入 ( 同 ( dttemp ) ,
保留主表顺序 ( 1 ) ,
输出表名称 ( “连锁手表H” ) ,
保留列属性 ) ;
关 ( dttemp ,没有保存 ) ;
关 ( DT ,没有保存 ) ;
DT = DTX
) ;
) ;
救命: jordanhiller @ JMP 女士
Lugi,
我只是支持JMP在加入表时将进行的自动名称更改,并在加入之前更改其名称。 在你的表格之前加入以下内容:加入表格:
对于 (colnum = 1 , colnum <= N Cols (dttemp) , colnum ++,
柱 (dt , colnum) << 设定名称 ( 烧焦 ( 柱 (dt , colnum) << 得到名字 ) ||
“表” || 烧焦 ( F ) )
) ;
//将数据表附加在一起