Subtrahieren von Datumsangaben in einer TabellenspalteHallo allerseits,
Könnten Sie mir bitte helfen, ein Skript zu schreiben, um die Daten in einer meiner Tabellenspalten um einen Tag zu subtrahieren und sie in einer neuen Spalte zu platzieren? Dies ist in Excel leicht zu bewerkstelligen, aber es fällt mir schwer, dies in JMP zu versuchen.
Beachten Sie, dass im Bild die Spalte mit dem Titel „TestEndDate“ =19.06.2017 ... Ich möchte, dass in der Spalte mit dem Titel „Teststartdatum“ Daten wie der 18.06.2017 angezeigt werden ...
Beachten Sie auch, dass die Daten in „TestEndDate“ nicht alle gleich sind ...
Betreff: Datumsangaben in Tabellenspalte subtrahierenGuter Fang in der Charakterspalte! (JMP richtet Zeichendaten linksbündig aus, numerische Daten rechtsbündig.)
Es gibt einige Hilfsfunktionen zum Hinzufügen von Minuten, Stunden, Tagen, Wochen und Jahren. inDays(1) ist 60*60*24:
Show(
Format( Today(), "y/m/d" ),
Format( Today() - In Days( 1 ), "y/m/d" ),
Format( Today() - In Weeks( 1 ), "y/m/d" ),
Format( Today() - In Years( 1 ), "y/m/d" )
)
Format(Today(), "y/m/d") = "2017/08/11";
Format(Today() - In Days(1), "y/m/d") = "2017/08/10";
Format(Today() - In Weeks(1), "y/m/d") = "2017/08/04";
Format(Today() - In Years(1), "y/m/d") = "2016/08/11";
Die Funktionsnamen beziehen sich auf die Argumenteinheiten und jede Funktion gibt eine JMP-Dauer in Sekunden zurück.
Betreff: Datumsangaben in Tabellenspalte subtrahierenJMP-Datumswerte werden in Sekunden gemessen. Um also einen Tag von einem bestimmten Datum zu subtrahieren, müssen Sie 60*60*24 Sekunden subtrahieren. Das folgende Skript erstellt eine Datentabelle mit einer Spalte, auf die eine Formel angewendet wird, die einen Tag von der ersten Datumsspalte subtrahiert.
Names Default to Here( 1 );
New Table( "Test",
Add Rows( 10 ),
New Column( "date",
Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "mmddyyyy" ),
Set Values(
[3585254400, 3585254400, 3585254400, 3585254400, 3585254400, 3585254400,
3585254400, 3585254400, 3585254400, 3585254400]
)
),
New Column( "test end date",
Numeric,
"Continuous",
Format( "m/d/y", 12 ),
Input Format( "m/d/y" ),
Formula( :date - 60 * 60 * 24 ),
Set Selected
)
)
In Ihrem beigefügten Bild ist mir auch aufgefallen, dass Ihr Datumswert anscheinend in eine Zeichenspalte und nicht als numerische Spalte mit einem angewendeten Datumsformat eingegeben wird. Sie müssen den Startdatumswert als numerischen Datumswert eingeben, wenn Sie Ihre Subtraktion durchführen möchten.