alkaa ymmärtää, miten oikein lajitella tietoja kehykset R
, tietenkin meidän täytyy ensin luoda tiedot runko manipuloida.
huomaa: väli ei ole välttämätön, mutta se parantaa luettavuutta.,
Suorittamalla meidän run.R
script lähdöt luettelo vektorit meidän tiedot runko odotetusti, siinä järjestyksessä kuin ne olivat tulleet:
$ Rscript run.R x y z1 apple a 42 orange d 33 banana b 24 strawberry c 1
Järjestys Toiminto
Vaikka ehkä ole helpoin lajittelu menetelmä tyyppi kannalta syntaksi, yksi, joka on helpoimmin saatavilla kaikki asennukset R
koska se on osa base
moduuli on order
toiminto.,
order
funktio hyväksyy joukon argumentteja, mutta yksinkertaisimmalla tasolla ensimmäisen argumentin on oltava arvojen tai loogisten vektorien sarja.,
esimerkiksi, voimme käyttää order()
yksinkertaisesti sellainen vektori viisi satunnaisesti tilata numerot tämä kirjoitus:
# Create unordered vectorvector = c(2, 5, 1, 3, 4)# Print vectorvector# Sort in ascending ordervector
Suorittamalla komentosarjan, näemme alkuperäisen lähtö järjestämätön vektori, jonka jälkeen nyt järjestetty lista jälkeenpäin:
$ Rscript run.R 2 5 1 3 4 1 2 3 4 5
Lajittelu Data Frame, jonka Vektori Nimi
, Jossa order()
toiminto meidän työkalu vyö, aloitetaan lajittelu tiedot runko kulkee vektorin nimet kuluessa tiedot runko.,
esimerkiksi, käyttämällä aiemmin luotu dataframe
objekti, voimme lajitella vektorin z
lisäämällä seuraava koodi meidän script:
# Sort by vector name dataframe
Mitä olemme tehokkaasti tehdä on soittaa meidän alkuperäinen dataframe
objekti, ja kulkee uuden indeksin, jotta haluaisimme., Tämä indeksi järjestys on luotu käyttämällä with()
toiminto, joka tehokkaasti luo uusi ympäristö käyttää kului tietojen ensimmäinen argumentti yhdessä ilmaus arvioida, että tiedot toinen argumentti.
Niinpä voimme arvioida uudelleen dataframe
dataa order()
toiminto, ja haluamme järjestystä, joka perustuu z
vektori majoitusliike, että tiedot runko., Tämä palauttaa uuden indeksin, jotta tiedot runko arvoja, joka sitten lopuksi arvioidaan sisällä dataframe
, syöttöä uusi tilattu tulos.
$ Rscript run.R x y z1 apple a 42 orange d 33 banana b 24 strawberry c 1 x y z4 strawberry c 13 banana b 22 orange d 31 apple a 4
näin Ollen me näemme, meidän alkuperäinen järjestämätön lähtö, jonka jälkeen toinen lähtö tiedot lajiteltu sarakkeen z
.
Lajittelu Sarakkeen Indeksi
Samanlainen kuin edellä menetelmä, se on myös mahdollista lajitella perustuu numeerinen index
sarakkeen tiedot runko, eikä erityinen nimi.,
sen Sijaan käyttää with()
toiminto, voimme yksinkertaisesti siirtää order()
toiminto meidän dataframe
. Voimme osoittaa, että haluamme lajitella sarakkeen indeksi 1
käyttäen dataframe
– syntaksilla, joka aiheuttaa R
palata tasot (nimet), että indeksi 1
sarake., Toisin sanoen, samanlainen kun ohitimme z
vektori nimi edellä, order
on lajittelu perustuu vector arvot, jotka ovat sisällä sarakkeen indeksi 1
:
dataframe ),]
Kuten odotettua, saamme normaalin lähdön jälkeen lajiteltu lähtö ensimmäinen sarake:
$ Rscript run.R x y z1 apple a 42 orange d 33 banana b 24 strawberry c 1 x y z1 apple a 43 banana b 22 orange d 34 strawberry c 1
Lajittelu Useita Sarakkeita
joissakin tapauksissa, se voi olla haluttu lajitella useita sarakkeita. Onneksi näin on hyvin yksinkertainen aiemmin kuvattujen menetelmien kanssa.,
jos Haluat lajitella useita sarakkeita käyttämällä vektori nimet, yksinkertaisesti lisätä ylimääräisiä argumentteja order()
toiminto soittaa kuin ennen:
# Sort by vector name then dataframe
Samalla tavalla, jos haluat lajitella useita sarakkeita perustuu sarakkeen indeksi, lisää argumentteja order()
erilaiset indeksit:
# Sort by column index then dataframe, dataframe ),]
Vastaa