Wie können wir in einer Situation, in der sowohl Zahlen als auch Text vorhanden sind, die richtige Sortierung erreichen?Wie in der folgenden JSL gezeigt, funktioniert die Sortierung in aufsteigender Reihenfolge korrekt, wenn nur Zahlen vorhanden sind. Wenn jedoch Text vorhanden ist, führt die Konvertierung in Zahlen vor der Sortierung zu Problemen. Welche Methoden können verwendet werden, um dieses Problem zu lösen?
stepList = {"2", "3", "10", "9", "1"};
stepListSort = Sort List( stepList );
stepListNum = {};
For( i = 1, i <= N Items( stepList ), i++,
Insert Into( stepListNum, Num( stepList[i] ) )
);
stepListNumSort = Sort List( stepListNum );
stepListWithString = {"2", "3", "10_New", "9", "1"};
stepListWithStringSort = Sort List( stepListWithString );
Show( stepListWithSting );
stepListNum = {};
For( i = 1, i <= N Items( stepList ), i++,
Insert Into( stepListNum, Num( stepListWithString[i] ) )
);
stepListWithStringNumSort = Sort List( stepListNum );Grundlegende Datenanalyse und ModellierungBetreff: Wie können wir in einer Situation, in der sowohl Zahlen als auch Text vorhanden sind, die richtige Sortierung erreichen?JMP verwendet an verschiedenen Stellen unterschiedliche Sortiermethoden (es gibt mindestens einen alten Beitrag von mir, der dazu fragt, aber möglicherweise schwer zu finden ist). Sie können versuchen, die Datentabelle durchzugehen
Names Default To Here(1);
stepListWithString = {"2", "3", "10_New", "9", "1"};
dt = New Table("A",
New Column("A", Character, Nominal, Values(stepListWithString))
);
dt << Sort(By(:A), Replace Table, Order(Ascending));
stepListWithStringSort = dt[0, 1];
Close(dt, no save);
show(stepListWithStringSort);
// stepListWithStringSort = {"1", "2", "3", "9", "10_New"};