Miten Lajitella Tiedot Runko Useita Sarakkeita R

posted in: Articles | 0

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.,

orderfunktio 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

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *