<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola,
Quiero abrir una tabla de datos (usando Big Class.jmp como ejemplo, pero quiero hacer esto para cualquier tabla) y crear una tabla de resumen para cada columna, devolviendo el número de valores no faltantes para cada columna (como se muestra en la tabla abajo).
| N filas | N(nombre) | N(edad) | N(sexo) | norte(altura) | norte(peso) |
|---|
| 40 | 40 | 40 | 40 | 40 | 40 |
Probé dos enfoques diferentes para esto y no tuve éxito (estoy usando JMP 9.0.3 de 64 bits).
En el primer ejemplo, intento pasar una lista de cadenas analizadas {N(:nombre),N(:edad),N(:sexo),N(:altura),N(:peso)} a Resumen(). Sin embargo, cuando ejecuto esto, solo crea una tabla de resumen con N filas.
Ejemplo 1
////////////////////////////////////////////////// //////////////////////////////
Abrir( "$SAMPLE_DATA/Big Class.jmp" );
dt = tabla de datos actual();
colList = dt<
icoles = N elementos (colList);
ListaSuma={};
para(i=1, i<=icols, i++,
Insertar en (listasum, analizar("N(:" || char(colList ) || ")"))
);
summDt = dt<
////////////////////////////////////////////////// //////////////////////////////
Luego intenté definir una expresión y pasar una cadena analizada (N(:nombre),N(:edad),N(:sexo),N(:altura),N(:peso)). Sin embargo, cuando intento evaluar esta expresión, obtengo lo siguiente...
Inesperado ",". Quizás falte un ";" o ",".
Línea 1 Columna 9: N(:nombre) ►, N(:edad), N(:sexo), N(:altura), N(:peso)
El texto restante que fue ignorado fue
Ejemplo2
////////////////////////////////////////////////// //////////////////////////////
Abrir( "$SAMPLE_DATA/Big Class.jmp" );
dt = tabla de datos actual();
colList = dt<
icoles = N elementos (colList);
MyExpr = expr(summDt = dt<
para(i=1, i<=icols, i++,
if(i==1, strColumns = "N(:" || char(colList ) || ")", strColumnas = strColumnas || ", N(:" || char(colList ) || ")")
);
//omitir lo anterior para verificar
//strColumns = "N(:nombre)"; //funcionará para una columna, pero arroja un error cuando intento pasar más de una columna (es decir, "Inesperado",". Quizás falte un ";" o ",".")
prueba = Eval Expr(MiExpr);
prueba;
////////////////////////////////////////////////// //////////////////////////////
Debo estar haciendo algo tonto.
Cualquier consejo/ayuda sería muy apreciado.
Gracias.
gracias mpb!
Me siento bastante avergonzado ahora - fue tan simple
Este ejemplo parece funcionar y puede ayudar:
dt = Abrir( "$SAMPLE_DATA/Big Class.jmp" );
colList = dt << Obtener nombres de columnas();
dtsum = dt << Resumen(Mean(Eval(colList) ) );