In una situazione in cui sono presenti sia numeri che testo, come possiamo ottenere l'ordinamento corretto?Come mostrato nel seguente JSL, l'ordinamento funziona correttamente in ordine ascendente quando sono presenti solo numeri; tuttavia, quando è mescolato con testo, la conversione in numeri prima dell'ordinamento causa problemi. Quali metodi possono essere utilizzati per risolvere questo problema?
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 );Analisi e modellazione dei dati di baseR: In una situazione in cui sono presenti sia numeri che testo, come possiamo ottenere l'ordinamento corretto?JMP usa diversi modi di ordinare in posti diversi (c'è almeno un mio vecchio post che chiede questo, ma potrebbe essere difficile da trovare). Puoi provare a passare attraverso la tabella dati
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"};