¿Cómo creo una fórmula de columna para N categorías?Me gustaría crear una fórmula de columna que proporcione un recuento del número de valores distintos en una columna.Puedo usar el visor de columnas, la función Mostrar resumen en JMP 15, pero quiero tener ese valor en una columna para usarlo en otros cálculos.
Por ejemplo, en la tabla de clase grande: N elementos en la columna "Sexo" deben mostrar 2 como 2 valores distintos.
Re: ¿Cómo creo una fórmula de columna para N categorías?Gracias, @txnelson & @PatrickGiuliano .
Bastante nuevo en JMP, todavía estoy aprendiendo. Es bueno saber sobre el operador Col Number().
Adjunto una muestra de mi conjunto de datos. Estoy buscando la cantidad única de herramientas por semana por año. Cada herramienta podría tener varias filas por semana. Puse una columna de resultados ideales en el conjunto.
¡De nuevo, gracias por tu ayuda!
Re: ¿Cómo creo una fórmula de columna para N categorías?¡Gracias Jim!
@CTrahon0526 Si es nuevo en JMP, aquí encontrará un poco más de detalle sobre lo que Jim compartió.
Puede colocar la función Col Number() en una fórmula de columna y calcularla directamente en la tabla de datos.
Adjunto una tabla de datos jmp de ejemplo simulado.
Primero, creé una columna "Año Semana" usando una fórmula de columna instantánea en JMP. Haga clic derecho en la columna de hora, Nueva columna de fórmula > Fecha y hora > Año Semana.
Luego creé una columna "Contar por año y semana" con la siguiente fórmula de columna:
Col Number(:time, :Year Week)
Re: ¿Cómo creo una fórmula de columna para N categorías?La función es
Col Number(<:column Name>)
Consulte el índice de secuencias de comandos para obtener más detalles.
Re: ¿Cómo creo una fórmula de columna para N categorías?
@PatrickGiuliano ,
¿Hay alguna manera de obtener los N elementos por variable?
Estoy tratando de encontrar los valores N únicos por año por semana laboral. Gracias.
Re: ¿Cómo creo una fórmula de columna para N categorías?Gracias @txnelson ¡Eres el hombre!
@patricia_roth y también se me ocurrió la siguiente oda al amable apoyo de algunos de los otros miembros del equipo de JMP.
Summarize( x = by( :sex ) );
N Items( x );
Muy parecido pero con algunas líneas menos.
Re: ¿Cómo creo una fórmula de columna para N categorías?Aquí está la fórmula que yo usaría:
If( Row() == 1,
Summarize( Current Data Table(), bygp = by( :sex ) );
n = N Items( bygp );
);
n;
Re: ¿Cómo creo una fórmula de columna para N categorías?No haría lo que me pides en una fórmula.Más bien, yo haría:
- Haga clic en Tablas=>Resumen y cree una tabla de datos de resumen, agrupando por Año, WW y ToolID
- Usando la tabla de datos de resumen recién creada, una vez más, haga clic en Tablas=>Resumen y cree una nueva tabla de datos de resumen agrupándola solo por Año y WW.La columna de la nueva tabla llamada # Filas le dará la cantidad de ID de herramientas únicas por año/WW.
- A continuación, haga clic en la tabla de datos original y luego, usando el menú desplegable Tablas una vez más, seleccione Actualizar.Esto copiará los datos de la segunda tabla de resumen a la tabla original.En el cuadro de diálogo de Actualización,
- Seleccione la tabla desde la cual actualizar (la segunda tabla de resumen)
- Seleccionar para hacer coincidir columnas
- Seleccione Año de cada tabla y haga clic en Coincidir
- Seleccione WW de cada tabla y haga clic en Match
- Haga clic en Aceptar
Los datos ahora estarán en su tabla de datos original.
Re: ¿Cómo creo una fórmula de columna para N categorías?@CTrahon0526 , ¡la solución de Jim es hermosa! Y te enseña mucho sobre las operaciones de tablas en JMP. Estoy de acuerdo en que una fórmula de columna en este caso es muy complicada. Tables Summary 2X es una solución muy elegante. Luego, "actualizar" los resultados a la tabla de datos original usando Tablas > Actualizar. Ese último paso se puede realizar de forma interactiva (literalmente arrastrando y soltando la columna de la segunda tabla de resumen a la primera y finalmente a la tabla principal) en lugar de usar Tablas > Actualizar, pero la solución que usa Actualizar es más sólida (reproducible). ) si va a realizar este cálculo en muchas tablas. Pero esto le da una idea de cuán interactivo es JMP como herramienta basada en GUI.
Re: ¿Cómo creo una fórmula de columna para N categorías?El arrastrar y soltar es genial.
Sin embargo, este enfoque tiene una ENORME desventaja:
no es dinámico. Si se agregan datos a la tabla, las entradas serán incorrectas.
Este es EL beneficio de una fórmula de columna: los valores siempre serán correctos.
Es sorprendente que no haya una nueva fórmula de columna/comando JSL Col N Categorías () disponible en JMP.
Re: ¿Cómo creo una fórmula de columna para N categorías?Aquí hay un deseo de agregar dicha funcionalidad.
... a JSL
... a nueva fórmula de columna
... al generador de gráficos
Col N Categorias
Supongo que sólo hay unos pocos usuarios de JMP en el mundo que no lo necesitan; )
La mayoría de los usuarios de JMP estarán entusiasmados de ver dicha funcionalidad en una versión futura de JMP (... junto con una clasificación densa )
Re: ¿Cómo creo una fórmula de columna para N categorías?[eliminado] no apareció en la posición correcta.
Re: ¿Cómo creo una fórmula de columna para N categorías?Llegué un poco tarde al hilo, pero estaba buscando una solución al mismo problema. La fórmula que aparece a continuación en la tabla de datos de @CTrahon0526 reproduce los valores de la columna "Identificadores de herramientas únicos por semana laboral por año"
Col Sum( Col Cumulative Sum( 1, :Year, :WW, :Tool ID ) == 1, :Year, :WW )
Re: ¿Cómo creo una fórmula de columna para N categorías?Bien, puedo usarlo mucho, así que ahora tengo:
Names Default To Here( 1 );
Try(dt = CurrentDataTable(), stop());
updateLBox = Function( {t},
(t << sib) << setitems( (t << topparent)[listboxbox( 1 )] << getselected )
);
nw = New Window("count unique entries",
<< Type("Modal Dialog"),
Border Box( Left( 10 ), Right( 10 ), bottom( 5 ),
V List Box(
Lineup Box( N Col( 1 ), spacing( 10 ),
// Text Box( "XG Boost Specification" ),
// colistbox only necessary if the script is standalone
H List Box(
Panel Box( "Select Columns", Col List Box( all, nlines( 15 ) ) ),
Panel Box( "Cast Selected Columns into Roles",
Lineup Box( N Col( 2 ),
Button Box("Unique",
<<SETFUNCTION></SETFUNCTION>... available at a single mouse click : )
Re: ¿Cómo creo una fórmula de columna para N categorías?Para obtener el siguiente nivel de interactividad, vote aquí:
Transformar columnas: ¿tan cómodo como las estadísticas de resumen?
Por ejemplo, para mostrar el número de fabricantes de automóviles (valores correctos para años individuales) y divididos por tamaño de puerta:
...puede haber aplicaciones más útiles : )
