hogyan lehet rendezni egy adatkeret több oszlop r

posted in: Articles | 0

kezdeni megérteni, hogyan kell megfelelően rendezni adatkeretek R, mi természetesen először létre kell hozni egy adatkeret manipulálni.

megjegyzés: a távolság nem szükséges, de javítja az olvashatóságot.,

run.R parancsfájl a vektorok listáját az adatkeretben a várt módon adja meg:

$ Rscript run.R x y z1 apple a 42 orange d 33 banana b 24 strawberry c 1

A rendezési funkció

, bár talán nem a legegyszerűbb rendezési módszer a szintaxis szempontjából, aR összes telepítéséhez a legkönnyebben elérhető, mivel abase modul része, aorder függvény.,

a order függvény számos érvet fogad el, de a legegyszerűbb szinten az első argumentumnak értékek vagy logikai Vektorok sorrendjének kell lennie.,

például használhatjuk a order(), hogy egyszerűen valamilyen vektor öt véletlenszerűen rendelt számok ez a szkript:

# Create unordered vectorvector = c(2, 5, 1, 3, 4)# Print vectorvector# Sort in ascending ordervector

Végrehajtó a forgatókönyvet, azt látjuk, hogy a kezdeti kimenet a rendezetlen vektor, amelyet a most rendezett lista utána:

$ Rscript run.R 2 5 1 3 4 1 2 3 4 5

Rendezés Adatok Keret által Vektor Neve

a order() függvény a szerszám övet, majd a start válogatás az adatok keret átadásával a vektor nevek belül az adatok keret.,

például, segítségével a korábban generált dataframe objektum, mi lehet a rendezés a vector z hozzáadásával a következő kódot, hogy a script:

# Sort by vector name dataframe

Mi vagyunk hatékonyan csinálja, hívja az eredeti dataframe objektumot, majd halad az új index érdekében, hogy szeretnénk., Ez az index sorrend a with() függvény segítségével jön létre, amely hatékonyan létrehoz egy új környezetet az első argumentumban átadott adatok felhasználásával, valamint egy kifejezést az adatok értékelésére a második argumentumban.

így újraértékeljük a dataframe adatokat a order() függvény segítségével, és a z vektor alapján szeretnénk megrendelni az adatkereten belül., Ez egy új index sorrendet ad vissza az adatkeret értékekhez, amelyet végül a dataframe értékel, kiadva az új megrendelt eredményt.

$ 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

következésképpen látjuk az eredeti rendezetlen kimenetet, amelyet egy második kimenet követ, az adatokatz oszlop szerint rendezve.

A fenti módszerhez hasonlóan a index egy oszlop numerikus alapján is rendezhető az adatkeretben, nem pedig az adott név.,

a with() funkció használata helyett egyszerűen átadhatjuk a order() függvényt a dataframefüggvénynek. Jelezzük, hogy a 1 oszlop szerint szeretnénk rendezni a dataframe szintaxis használatával, ami R az index 1 szintjeinek (neveinek) visszaadásához., Más szóval, hasonlóan a z vektornévhez, order az index 1:

dataframe ),]

ahogy az várható volt, megkapjuk a normál kimenetet, majd az első oszlopban a rendezett kimenetet:

$ 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

több oszlop szerinti rendezés

egyes esetekben több oszlopra is sorolható. Szerencsére ez nagyon egyszerű a korábban leírt módszerekkel.,

A rendezés több oszlop segítségével vektor nevek, egyszerűen csak további érv, hogy a order() függvény hívás, mint korábban:

# Sort by vector name then dataframe

Hasonlóképpen, a rendezés több oszlop alapján oszlop index, további érv, hogy a order() a különböző indexek:

# Sort by column index then dataframe, dataframe ),]

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük