我不确定数据格式最合适的名称是什么,但我将其称为“多个框”。 在这种格式中,每个板的读数输出到网格中。或包含行和列标签的框以及读取的数字。每个框由一个空行分隔。
还假设原始数据从A:1开始,即在表的第一列中表的第一行的Excel中。

数据格式化目标是将此格式转换为最小列数,其中每列有一个变量,每行一个观察。
要使用附加的脚本,请转到Excel,然后选择整个页面并进行复制(编辑,复制)。然后进入JMP并运行脚本。
该脚本有一些有趣的部分,比如它将数据表保存到剪贴板中。
所有其余部分只是基本的格式和逻辑,以使数据成为有用的形状。
rev 2注意:脚本的第2版更好用
Names Default To Here( 1 );
dt = New Table( "raw data" );
dt << Bring Window To Front;
Main Menu( "paste" );
dt1 = Current Data Table() << Stack(
columns(
:Column 2,
:Column 3,
:Column 4,
:Column 5,
:Column 6,
:Column 7,
:Column 8,
:Column 9,
:Column 10,
:Column 11,
:Column 12,
:Column 13
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" )
);
dt1 = Current Data Table();
dt1 << New Column( "temp1", formula( If( Length( :Column 1, ) > 1, :Column 1, Lag( :temp1, 1 ) ) ) );
dt1 << New Column( "temp2", formula( If( :Column 1 != Lag( :Column 1, 1 ), 1, Lag( :temp2, 1 ) + 1 ) ) );
dt1 << New Column( "temp3", formula( If( :Column 1 == "" | Contains( :Column 1, ":" ) > 0, 1, 0 ) ) );
dt1 << New Column( "Well ID", formula( :Column 1 || Char( :temp2 ) ) );
dt1 << run formulas();
dt1:temp2 << Delete Formula;
dt1:temp3 << Delete Formula;
dt1:temp1 << set name( "Plate ID" );
:name("Well ID") << Delete Formula;
:name("Plate ID") << Delete Formula;
dt1 << Select Where( is missing (:Data) == 1 | is missing(:Column 1)==1);
dt1 << delete rows;
dt1:Column1 << set name( "Row ID" );
dt1:temp2 << set name( "Column ID" );
:Data<<SET selected=""></SET>