Benötigen Sie Hilfe beim Konvertieren eines Datumsformats von Zeichen in Zahlen in JMP 15?Hallo,
Meine Excel-Tabelle hat das Datumsformat: Mittwoch, 18. November 2020, 12:45:00 Uhr. Beim Import in JMP 15 wird es als Zeichen gelesen.
- Können Sie bitte eine Methode zum Konvertieren des Datums von seinem Zeichenformat in ein numerisch-kontinuierliches Format (z. B. JJJJ-MM-TT HH: MM) freigeben? Ich habe eine JMP-Datei als Referenz angehängt.
- Gibt es eine Möglichkeit, beim Import das richtige (numerische) Datumsformat anzuwenden?
Danke im Voraus.
DatentabelleBetreff: Benötigen Sie Hilfe beim Konvertieren eines Datumsformats von Zeichen in Zahlen in JMP 15?Hier ist eine Brute-Force-Methode, um das zu bekommen, was Sie wollen.Ich habe die komplette Datentabelle angehängt.

If( Row() == 1,
monthList = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November",
"December"}
);
myDate = Date MDY(
Contains( monthList, Word( 2, :Name( "Current Date Format (character)" ), ", " ) ),
Num( Word( 3, :Name( "Current Date Format (character)" ), ", " ) ),
Num( Word( 4, :Name( "Current Date Format (character)" ), ", " ) )
);
If(
Word( -1, :Name( "Current Date Format (character)" ), ", " ) == "PM" & Num(
Word( 5, :Name( "Current Date Format (character)" ), ",: " )
) < 12,
myDate = myDate + Num( Word( 5, :Name( "Current Date Format (character)" ), ",: " ) ) * 3600 + 3600 * 12,
myDate = myDate + Num( Word( 5, :Name( "Current Date Format (character)" ), ",: " ) ) * 3600
);
myDate = myDate + Num( Word( 6, :Name( "Current Date Format (character)" ), ",: " ) ) * 60 + Num(
Word( 7, :Name( "Current Date Format (character)" ), ",: " )
);Betreff: Benötigen Sie Hilfe beim Konvertieren eines Datumsformats von Zeichen in Zahlen in JMP 15?Hier kommt eine weitere Möglichkeit, Regex zu verwenden. Die wahrscheinlich kürzeste Implementierung wäre Version 2 unten, wobei zusätzlich informat () in einer Formel verwendet wird. Sobald Sie die Informationen aus der Datumszeichenfolge gelesen haben, gibt es viele Möglichkeiten, sie in ein numerisches Datum umzuwandeln.
Wenn Sie das Datum numerisch in Excel haben, ist es besser, das Format in Excel so zu ändern, dass JMP lesen kann.
Regex ist großartig, ich liebe es!
Names Default To Here( 1 );
// AA for conversion of month
month_AA = Associative Array(
{"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"},
{"01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"}
);
date_str = "Wednesday, November 18, 2020, 12:45:00 PM";
date_str = "Friday, November 20, 2020, 8:10:00 AM";
regex_str = "(\w+), (\w+) (\d+), (\d+), (\d+):(\d+):(\d+) (PM|AM)";
// 1st version generating a list and building string thereof
date_component_lst = Regex Match( date_str, regex_str );
date_component_lst[6] = char(num(date_component_lst[6]) + match(date_component_lst[9], "AM", 0, "PM", 12));
date_str1 = date_component_lst[5] || "-" || month_AA[date_component_lst[3]] || "-" || date_component_lst[4] || "T" || date_component_lst[6] || ":"
|| date_component_lst[7] || ":" || date_component_lst[8];
// 2nd version generating a string, to be used by "Parse Date ()" do directly convert it into a date
date_str2 = Regex( date_str, regex_str, "\3 \2 \4 \5:\6:\7 \8" );