Re: Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLhttps://community.jmp.com/t5/Discussions/difference- between-set-and-new-table-variable-strange-results-in/mp/429212/highlight/true#M67868 de diferencia entre el conjunto y la nueva variable de tabla: ¿resultados extraños al escribir una cadena?describe cuatro funciones diferentes, set/get/new table variable y dt:tablevar y recomienda usar set table variable y dt:tablevar.
Re: Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLLa variable a almacenar es una tabla de datos. El dt:tablevar no parece funcionar en este caso.
Re: Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLLas variables de tabla son cadenas de caracteres.
Si desea que dt_recovered sea el mismo después, deberá convertir dt_metadata en la representación de cadena de caracteres de la expresión cuando la almacene en la variable de tabla. Luego deberá analizarlo cuando lo recupere de la variable.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt_metadata = Open( "$SAMPLE_DATA/Solubility.jmp" );
dt << Set Table Variable( "dt_user", char(dt_metadata));
close(dt_metadata);
dt_recovered = parse(dt << Get Table Variable("dt_user"));
show(dt_recovered);
show(Is String(dt_recovered));
//dt_recovered = Data Table("Solubility.jmp");
//Is String(dt_recovered) = 0;
Re: Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLAquí hay tres ejemplos que incorporan los datos de la tabla B en la tabla A. Prefiero el ejemplo dtb3 para tablas de tamaño razonable. El ejemplo de dtb4 es lo que creo que describiste; tal vez sea mejor para una gran mesa B, pero es muy opaca para cualquier otra persona. dtb5 combina las dos ideas.
// Make sample tables. When done, aa will have two table scripts and a table variable.
// the scripts and variables show three ways to embed bb in aa.
dta = New Table( "aa", New Column( "a", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1] ) ) );
dtb = New Table( "bb", New Column( "b", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [2] ) ) );
// dtb3: I think you should do this with a table script because it can be
// opened from the GUI or from JSL. The downside is if the table is
// very large it will be slow to save and slow to open because it is
// making a script to recreate the table.
Eval( Eval Expr( dta << NewScript( "bbb", Expr( dtb << getScript ) ) ) );
// jsl to open:
dtb3 = Eval( dta << getScript( "bbb" ) );
dtb3 << SetName( "dtb3" ); // optional, was "bb 2"
// dtb4: it gets ugly with a table variable, there are several possibilities. This
// will save the table and grab the binary from the disk file and make a character
// string from that. You might choose to do this for a really large file, but I'm
// not sure what issues you'll run into.
dtb << Save( "$temp/bb.jmp" );
blob = Load Text File( "$temp/bb.jmp", blob );
blob = Gzip Compress( blob );// optional
text = Char( blob );
dta << SetTableVariable( "bbbb", text );
// reopen
text = dta:bbbb;
blob = Parse( text );
blob = Gzip Uncompress( blob );//optional
dtb4 = Open( blob, "jmp" );
dtb4 << SetName( "dtb4" ); // optional, was "untitled"
// dtb5: you could combine the two ideas, saving the binary data as a table script so
// it can be used from the GUI
dtb << Save( "$temp/bb.jmp" );
blob = Load Text File( "$temp/bb.jmp", blob );
blob = Gzip Compress( blob );// optional
text = Char( blob );
Eval(
Eval Expr(
dta << NewScript(
"bbbbb",
Local( {text, blob, dt},
text = Expr( text );
blob = Parse( text );
blob = Gzip Uncompress( blob );//optional
dt = Open( blob, "jmp" );
dt;
)
)
)
);
// reopen
dtb5 = Eval( dta << getScript( "bbbbb" ) );
dtb5 << SetName( "dtb5" ); // optional, was "untitled"
Re: Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLO, si quiere dejar un enlace en lugar de incrustar los datos, tal vez use el nombre de archivo para la tabla enlazada:
dta = New Table( "aa", New Column( "a", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1] ) ) );
dtb = New Table( "bb", New Column( "b", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [2] ) ) );
dta << Save( "$temp/aa.jmp" );
dtb << Save( "$temp/bb.jmp" );
// leave table B's filepath in table A
dta << SetTableVariable("path to B", dtb<<GETPATH></GETPATH>Almacenamiento de tablas de datos como metadatos (variables de tabla) JSLLas variables de tabla se utilizan para almacenar metadatos dentro de una tabla de datos ( documento JSL , doc general )
Sin embargo, parecen estar limitados a variables solo como cadenas (consulte el código a continuación).
¿Cuál sería la mejor opción para almacenar una tabla de datos como una variable de tabla?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt_metadata = Open( "$SAMPLE_DATA/Solubility.jmp" );
dt << Set Table Variable( "dt_user", dt_metadata );
close(dt_metadata);
dt_recovered = dt << Get Table Variable("dt_user");
show(dt_recovered);
show(Is String(dt_recovered));
//dt_recovered = "Solubility";
//Is String(dt_recovered) = 1;Modelado Estadístico AvanzadoAutomatización y secuencias de comandosFusión y limpieza de datosLa personalización en masaRe: Almacenar tablas de datos como metadatos (variables de tabla) JSLPara las columnas, un usuario puede especificar propiedades de columna, e incluso existe la posibilidad de definir propiedades definidas por el usuario.
¿Qué tal un marco similar para tablas?
He aquí un deseo:
Información general sobre la mesa.