¡Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechas¡Hola! Tengo dos listas de fechas para un proyecto, una es las Fechas de mantenimiento y otra son las Fechas de producción. Estoy intentando averiguar para cada Fecha de producción, cuánto tiempo ha pasado desde la última Fecha de mantenimiento. Las Fechas de mantenimiento serán mucho menos frecuentes que las Fechas de producción, obviamente, pero hay muchas de ellas, por lo que sería mucho más fácil tener una fórmula para calcular este delta. ¿Alguien tiene alguna sugerencia?
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechas¡Sí! Creo que esto funcionará! Me tomará un poco averiguar cómo colocar mis mesas allí (soy un noob total en jmp
) pero el principio parece correcto. ¡Gracias!
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasAquí hay 2 tablas de datos sin claves que hacen una diferencia de fecha. ¿Es esto lo que estás buscando?
Names Default To Here( 1 );
// Create some sample date data tables
dtProd = New Table( "Production Data",
Add Rows( 15 ),
New Column( "Production Date",
Numeric,
"None",
Format( "ddMonyyyy", 12 ),
Input Format( "ddMonyyyy" ),
Set Values(
[3461875200, 3469737600, 3485462400, 3506630400, 3509049600, 3530217600, 3545942400, 3567110400, 3590697600,
3606422400, 3614284800, 3651177600, 3659040000, 3666902400, 3688070400]
)
)
);
dtMaint = New Table( "Maintenance Data",
Add Rows( 4 ),
New Column( "Maintain Date",
Numeric,
"Continuous",
Format( "ddMonyyyy", 12 ),
Input Format( "ddMonyyyy" ),
Set Values( [3444163200, 3528316800, 3603744000, 3689539200] )
)
);
// Create a new column in the Production Data table
dtProd << New Column( "Days since maintenance", Format( "Fixed Dec", 8,0 ) );
// Populate the new column by finding the most recent value of the Maintain Date
// that is less than the current Production Date, and then find the Difference
// in days
For( i = 1, i <= N Rows( dtProd ), i++,
selectionMatrix = dtMaint << get rows where( dtMaint:Maintain Date <= dtProd:Production Date[i] );
dtProd:Days since maintenance[i] = Date Difference(
Max( dtMaint:Maintain Date[selectionMatrix] ),dtProd:Production Date[i], "Day");
);
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasRealmente no puedo adjuntar los datos ya que es IP ... Pero ambos conjuntos de datos están en tablas JMP.
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasHola kevin_c_anderso! Mi problema no es necesariamente encontrar la diferencia entre las fechas, sino que tengo dos listas de fechas que no están conectadas entre sí, y para una lista necesito la cantidad de tiempo transcurrido desde el evento más cercano / más reciente en la otra lista. La Lista A tiene más entradas que la Lista B, y no hay columnas en ninguna de las listas que tengan algo que pueda usar para unirme a ellas. Solo quiero averiguar para cada elemento de la Lista A, cuál es el evento más reciente en la Lista B, y luego puedo calcular la cantidad de tiempo que pasó entre ellos. ¿Tiene sentido?
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechas¿Tiene sus datos en listas JMP o en tablas de datos JMP? ¿Puede adjuntar muestras de sus datos a la discusión?
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasHmm parece que no puedo hacerlo funcionar ... Tal vez sea porque las listas se generan de forma independiente y no tienen nada que ver entre sí (por lo que JMP puede decir). Supongo que me permite volver a encuadrar mi pregunta: tengo 1 lista con Prod Lot, Prod Date / Time, Prod Equipment. En una lista separada, tengo Equipo de Instalaciones (no es lo mismo que el Equipo Prod), Evento de Mantenimiento de Instalaciones, Fecha / Hora de Mantenimiento de Instalaciones. Son dos listas separadas, no tengo ninguna forma de unirme (no se pueden generar claves que funcionen), pero quiero averiguar para cada fecha / hora de Prod cuál fue la fecha / hora de mantenimiento más reciente de las instalaciones ( y supongo que el Evento de Mantenimiento de Instalaciones, aunque todos son solo eventos "on / off". ¿Tiene sentido?
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasSi tiene 2 listas de fechas, una llamada Prod (fechas de producción) y otra llamada Maint (fechas de mantenimiento), puede usar lo siguiente para obtener la última fecha de mantenimiento. Luego, utilizando una función de Diferencia de fecha (), puede encontrar la diferencia en días
Nota: La lista / matriz de mantenimiento debe estar en orden ascendente.
names default to here(1);
maint={.............};
prod={..............................};
For(i=1,i<=N Rows(prod),i++,
LastMaintDate=loc sorted(matrix(maint),matrix(prod[i]));
DaysDifference = Date Difference(prod,LastMaintDate,"Day");
);
Re: Ayuda! Tratando de calcular las diferencias de tiempo usando dos listas diferentes de fechasHola, winslow!
JMP realiza un seguimiento de los tiempos de datos como el número de segundos desde la medianoche, 01 de enero de 1904. Por ejemplo, en este momento es 3599388994. Esto hace que sea increíblemente fácil hacer un seguimiento de las diferencias horarias ... solo requiere un poco de aritmética y algo de formato. Los formatos JMP admiten un montón (14?) Formatos de fecha ISO diferentes, e incluso puede analizar cualquier formato de fecha no compatible en un JMP informat con una fórmula o script.
Es posible que tenga más dificultades al reunir sus dos listas para que pueda realizar toda la aritmética correctamente. Responda si necesita ayuda con eso o si tiene preguntas.