JMP-ZeitformatierungIch bekomme das Zeitformat nicht zum Laufen.Laut Skripthandbuch wird das Format „m/d/jh:m:s“ sowohl für die 12-Stunden- als auch für die 24-Stunden-Zeit verwendet ... WTF?Warum sollte ich jemals wollen, dass eine Funktion wohl oder übel die eine oder andere Antwort gibt?Wie bringe ich das zum Laufen?
time = today(); //3619617166
formattedTime = format(time, "m/d/y h:m:s");
print(formattedTime); //"09/12/2018 5:12:46 PM"
//What I want: "09/12/2018 17:12:46"
Es gibt einige kryptische Hinweise im Skripthandbuch, die mir das Gefühl geben, dass je nach Computereinstellungen 12 oder 24 Stunden ausgewählt werden. Das ist eine schreckliche Idee, denn ich möchte nicht, dass mein Code auf der Hälfte der Computer meiner Benutzer kaputt geht.
Wenn die Formatierung nicht funktioniert, gibt es eine einfache Lösung?
Betreff: JMP-ZeitformatierungIch bin bei dir, Chris.Die JMP-Funktion ist idiotisch.Ich sollte kein Skript schreiben müssen, nur um ein Zeitformat von AM/PM auf 24 Stunden zu ändern.Andere Threads gaben Formeln dafür, von denen keine funktionierte.Es gibt NULL Grund, warum dies kein Standard-JMP-Format in der Dropdown-Liste sein sollte. Seit Ihrem Beitrag sind 3 Jahre vergangen und immer noch nichts von JMP.
Betreff: JMP-ZeitformatierungDanke. Ich habe bereits über den Wunschlisteneintrag abgestimmt. Mir gefällt keines der Standard-Datumsformate besonders, daher würde ich diese Funktion auf jeden Fall verwenden, wenn sie als integrierte Funktion verfügbar wäre.Da ich nun weiß, was erforderlich ist, habe ich die Lernkurve hinter mir und kann meine Daten nach Belieben formatieren.Grenzenlose Flexibilität ist nützlich.Aber wenn ich versuchen würde, das alles einem Excel-Benutzer zu erklären, der kein Programmierer ist, würde ich leere Blicke auf mich ernten.Scheint übermäßig kompliziert, wenn Excel seit mindestens 1997 das Datumsformat „TT hh:mm“ akzeptieren kann.
Betreff: JMP-ZeitformatierungHallo @Chris_Rodrigues ,
Schauen Sie sich die Funktion unten an und stimmen Sie für die Idee ab, wenn sie Ihnen gefällt JMP-Wunschliste hier .Ich verwende so etwas ständig und würde es gerne als integrierte Funktion zur Verfügung stellen.
Names default to here(1);
time = 3619617166;
pad = function( {x}, if(x < 10, "0" || char( x ), char( x )));
formatdatetime = function({time, pattern, prepend=""},
char(substitute(pattern,
prepend || "H", pad(hour(time, 24)),
prepend || "h", pad(hour(time, 12)),
prepend || "M", pad(minute(time)),
prepend || "S", pad(second(time)),
prepend || "m", pad(month(time)),
prepend || "d", pad(day(time)),
prepend || "y", char(year(time)),
prepend || "AP", char(if(hour(time)==24, "AM", if(hour(time, 24)>11,"PM","AM"))),
// the rest of the formatting options..Month name,
// short month name, hours without padding, etc
))
);
formatdatetime(time, "m/d/y h:M:S AP");
// 09/12/2018 05:12:46 PM
formatdatetime(time, "ymd_HMS");
// 20180912_171246
formatdatetime(time, "hour = %h, minute = %M", "%")
// hour = 05, minute = 12Betreff: JMP-ZeitformatierungIn meinen Diagrammen wollte ich den Beschriftungsraum auf derZuerst dachte ich, dass die Funktion Format() dies problemlos bewerkstelligen könnte, aber am Ende habe ich Folgendes verwendet:
Names Default To Here( 1 );
pad = Function( {x}, If( x < 10, "0" || Char( x ), Char( x ) ) );
Char( Match( Day Of Week( :value ), 1, "Sun", 2, "Mon", 3, "Tue", 4, "Wed", 5, "Thu", 6, "Fri", 7, "Sat" ) ) || " " || pad( Hour( :value, 24 ) ) ||
":" || pad( Minute( :value ) );und das ist das Ergebnis:

Betreff: JMP-ZeitformatierungBitte schauen Sie sich auch an Hilfe > JMP-Dokumentationsbibliothek > Skripthandbuch und suchen Sie nach ' benutzerdefinierte Funktionen .' Die Informationen beginnen auf Seite 393 für die Version JMP 15.1. Hier finden Sie auch benutzerdefinierte Transformationen und benutzerdefinierte Formate. Diese Definitionen können dann auch interaktiv im JMP UI verwendet werden.
Betreff: JMP-ZeitformatierungIch habe gerade versucht herauszufinden, wie ich Datumsformate in meinen Diagrammen so darstellen kann, wie ich es möchte.Ich hätte nie gedacht, dass es so schwer sein würde.Also muss ich es Zeichen für Zeichen aufbauen und meine eigene Funktion erstellen, um Stunden/Minuten/Sekunden mit führenden Nullen aufzufüllen.Eindrucksvoll.Danke @ich h für den Tipp.
Betreff: JMP-ZeitformatierungAm Ende habe ich Folgendes zur JMP-Wunschliste hinzugefügt:
https://community.jmp.com/t5/JMP-Wish-List/JMP-Time-Formatting-12-v-24-hr-control/idi-p/74643#M336
Betreff: JMP-ZeitformatierungDanke @ich h ; Das ist eine anständige Lösung.Eine Anmerkung: Ich glaube, Sie müssen Stunde (Zeit, 24) eingeben, um die 24-Stunden-Zeit zu erzwingen.Es scheint standardmäßig auf 24 Stunden eingestellt zu sein, aber die Dokumentation gibt mir das Gefühl, dass es standardmäßig auf 12 Stunden eingestellt werden soll.
//My update: (just slightly shorter)<BR /><BR />format(time, "m/d/y") || " " || pad(hour(time, 24)) || ":" || pad(minute(time)) || ":" || pad(second(time));
Ich hoffe auch, dass es eine anpassbare Lösung für Formatzeichenfolgen gibt.Wenn es in der nächsten Woche keine bessere Antwort gibt, füge ich die Anfrage zur JMP-Wunschliste hinzu.Hoffentlich kann jemand von JMP antworten.
Betreff: JMP-ZeitformatierungAm Ende verwende ich oft so etwas:
names default to here(1);
time = 3619617166;
pad = function( {x}, if(x < 10, "0" || char( x ), char( x )));
pad(month(time)) || "/" || pad(day(time))|| "/" || char(year(time)) || " " ||
pad(hour(time)) || ":" || pad(minute(time)) || ":" || pad(second(time));
// "09/12/2018 17:12:46"+1 zur Lösung mit einer anpassbaren Formatzeichenfolge.
Betreff: JMP-ZeitformatierungSie können Formatmuster verwenden, um Ihr Datum zu ändern. Dies war höchstwahrscheinlich die Lösung von JMP, da der Wunschlisteneintrag auf „Geliefert“ gesetzt wurde.

Numerische Formate (jmp.com)
Wie wende ich benutzerdefinierte Datums- (und Dauer-)Formate in JMP an?