如何轻松导入/分配单位属性到多列?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
我在石化行业工作,与流程行业的其他人一样,我使用 JMP 来分析连续/批量过程测量时间序列数据。 第 1 列是时间戳,第 2 列到第 n 列是过程测量值,例如:流动;压力;温度;转速;质量等. 数据从流程历史数据库查询到 Excel 中。 第一行包含测量名称,第二行包含测量单位:kg/hr;摄氏度;千帕;磅/平方英寸;千桶/小时; ETC.. 有没有办法将单位信息分配给“单位”列属性? 这将是 Excel 导入向导中的一个很棒的功能。
回复:如何轻松导入/分配单位属性到多列?MPB:
谢谢。 这样可行。 我对脚本编写很陌生,并且在使用 eval 时仍然犹豫不决。
我还向我的区域 JMP 支持人员 Jerry Cooper 提出了这个问题。 他的解决方案:
名称默认为此处( 1 );
dt = 当前数据表();
mycols = dt << 获取列名( string );
对于( i = 1, i <= N 项( mycols ), i++,
如果(包含( mycols 、“-”)、
myunits = Substr( mycols , 包含( 霉菌, "-", -1 ) + 1 );
新名称 = Substr( mycols , 1, 包含( mycols , "-", -1 ) - 1 );
列( i ) << 设置名称( newname );
Column( i ) << 设置属性( "Units", eval(myunits) );
)
);
他联系开发人员将此功能添加到 Excel 导入向导中。 另一种需要类似的情况是规格限制。 如何将它们与数据一起导入并将它们分配给列属性。
回复:如何轻松导入/分配单位属性到多列?在 JMP 11 中,出色的 Excel 导入向导可让您指定要考虑标题的行数及其位置,然后指定数据的位置。 通过交互方式执行此操作或使用嵌入到生成的 JMP 文件中的脚本,您可以获取如下所示的 Excel 工作表:
长度 宽度 重量
英尺 英寸 磅
1 10 100
2 20 200
3 30 300
4 40 400
5 50 500
6 60 600
最终得到如下所示的 JMP 表:
| 长度-ft | 内宽 | 重量-lb |
| 1 | 10 | 100 |
| 2 | 20 | 200 |
| 3 | 30 | 300 |
| 4 | 40 | 400 |
| 5 | 50 | 500 |
| 6 | 60 | 600 |
如果这足够了,那么你就完成了。 如果没有,那么您可以运行如下脚本:
dt = 当前数据表();
For( 列数 = 1, 列数 <= 3, 列数++,
col = 列名( colnum );
charcol = Char( 列名( colnum ) );
colname = Word(1, charcol, "-" );
colunit = Word(2, charcol, "-" );
newcolname = col << 设置名称( colname );
newcolname << 设置属性( "单位", Eval( colunit ) );
);
最终得到如下所示的 JMP 表:
长度 宽度 重量
(英尺)(英寸)(磅)
1 10 100
2 20 200
3 30 300
4 40 400
5 50 500
6 60 600
其中括号之间的文本输入到每列的 Units 属性中。