¿Cómo asigno una fecha de inicio?Tengo un estudio longitudinal con sitios ingresando en diferentes fechas. Para que sean comparables, necesito asignar cada fecha de entrada como "1" y el segundo punto de recopilación de datos como "2", y así sucesivamente. Los datos están en formato largo y faltan muchos datos (recopilación de datos perdida)
Los datos se ven así, quiero generar "Contar":
ID Fecha Var1 Conteo
001 enero-1. .
001 febrero-1. .
001 marzo-1 10 1
001 abr-1 13 2
002 enero-1 8 1
002 febrero-1 10 2
002 marzo-1. .
Utilicé una fórmula JRP, pero cuenta cada línea tanto si falta el primer compás como si no.
Re: ¿Cómo asigno una fecha de inicio?¡Gracias!
He estado intentando aprender a programar JMP y esta interacción me ayuda, especialmente cuando las solicitudes extrañas no están en los libros.Re: ¿Cómo asigno una fecha de inicio?Adjunto una nueva versión de la fórmula. Debería funcionar como se indicó en su última modificación.
Tenga en cuenta que la comunidad de debate no pretende ser una "fábrica de códigos". Está ahí para ayudar a los usuarios a resolver problemas para que puedan aprender y a partir de ahí poder resolver sus propios problemas.
JMP proporciona una gran cantidad de documentación. Por favor ve a
Ayuda==>Libros==>Usando JMP
y
Ayuda==>Libros==>Guía de secuencias de comandos
Re: ¿Cómo asigno una fecha de inicio?¡Excelente! ¡Gracias por la aclaración y la fórmula revisada! Te lo agradezco.
La revisión funciona EXCEPTO si el patrón que falta está mezclado. Por ejemplo, consulte "Sitio=001" a continuación, mis resultados se ven así con la fórmula revisada (Recuento) y lo que quiero que me proporcione.
Fecha del sitio Var1 Conteo What_I_Want
001 mayo. . .
001 10 de junio 1 1
001 julio. . .
001 12 de agosto. 2
001 15 de septiembre. 3
002 13 de mayo 1 1
002 14 de junio 2 2
Re: ¿Cómo asigno una fecha de inicio?1. Te adjunto una nueva tabla de datos de ejemplo con la nueva fórmula que maneja lo que estás solicitando
2. Sí, debe cambiar el nombre de la columna :ID por el nombre de la variable que reinicia el contador y :Var 1 por el nombre de la columna de medición.
3. No deberías haber cambiado el nombre de la Variable de Memoria llamada "TheColumn"; Este no es el nombre de una columna, solo pretende realizar algunos cálculos en la fórmula. En la nueva fórmula cambié el nombre de la variable a "Zippy" en un intento de mostrar que no está relacionada con ningún nombre de columna. La única conexión con la columna es el listado final de la variable al final de la fórmula. JMP toma lo último especificado (en este caso, el valor calculado de Zippy) y lo pasa al valor que se utilizará para la columna a la que se aplica el formato, para la fila en la que se está trabajando actualmente la fórmula.
2. Is Missing() es una función que si el contenido de la función ":Var 1" es un valor faltante, entonces la función devolverá un 1. Si no falta el valor, devuelve un 0. el "== " es un operador de comparación de "Igual a". Entonces "== 0" pregunta si la función "Falta()" devuelve un "0", lo que diría que el valor de la variable es un valor válido.
Re: ¿Cómo asigno una fecha de inicio?Jim,
Gracias por hacer el seguimiento.
1. ¿Podemos hacer que la columna Count deje de contar cuando falta el valor? En su ejemplo, repite el último número de conteo, presumiblemente lo hará hasta que cambie el número de identificación.
2. Copié y pegué tu fórmula. Lo único que cambié en tu fórmula es el nombre de las variables para que coincida exactamente con mi conjunto de datos.
3. La palabra "recuento" no aparece en ninguno de mis nombres de variables. Cambié el nombre de mi variable "TheCount" a "Columna 10" y recibí el mismo mensaje de error. También intenté cambiar el nombre de la variable de mi sitio. El mismo problema.
4. Estoy usando JMP Pro 13.1
Falta (Var1) == 0 Entonces TheCount=1
Se traduce como si faltara Var1, ¿entonces la nueva variable (TheCount) = 1? Pero ¿qué hace "==0"?
Esto es lo que tengo, incluidos los nombres de mis variables.
Si ( Retraso ( :ID del sitio ) != :ID del sitio,
Si ( Está perdido ( : Valor cero ) == 0 ,
:Columna 10 = 1 ,
:Columna 10 = .
),
Si ( Está perdido ( : Valor cero ) == 0 ,
:Columna 10 = Suma ( :Columna 10, 1 )
)
);
:Columna 10;
Re: ¿Cómo asigno una fecha de inicio?Parece que abriste la tabla de datos que adjunto. Y por lo que dijiste, puedes ver los valores de la columna Count. Si ve esos valores, entonces la fórmula está funcionando. La razón por la que el recuento solo llega a 2 es que el recuento se reinicia cuando cambia la columna de ID y el contador se reinicia, como en el ejemplo que proporcionó.
¿Está cambiando algo en la fórmula que proporciono? El problema recursivo puede ocurrir si intenta utilizar el nombre "Recuento" en la fórmula de la columna denominada "Recuento". Por eso utilizo el nombre de variable "TheCount" para el cálculo. La fórmula utilizará el último elemento calculado para pasar al valor a utilizar para la fórmula.
Finalmente, ¿qué versión de JMP estás usando?
Re: ¿Cómo asigno una fecha de inicio?Mmm. Mismo mensaje de error. Inventé los datos que te di, pero es la misma idea, excepto que el ID es un carácter en mis datos. ¿Haría eso alguna diferencia?
Además, noté que su fórmula dejó de contar en 2.
¡Gracias!
Re: ¿Cómo asigno una fecha de inicio?Se adjunta un conjunto de datos con la fórmula establecida para la columna Count.
Re: ¿Cómo asigno una fecha de inicio?Esta formula me da el siguiente error
"Referencia ilegal (recursión) 1 veces en las filas: 2"
Sigo la fórmula, pero no puedo entender dónde está el error.
Re: ¿Cómo asigno una fecha de inicio?Aquí hay una versión de la fórmula que funcionará.
If( Lag( :ID ) != :ID,
If( Is Missing( :Var1 ) == 0,
TheCount = 1,
TheCount = .
),
If( Is Missing( :Var1 ) == 0,
TheCount = Sum( TheCount, 1 )
)
);
TheCount;