Mi a legjobb sorba rendezési módszer egy data.frame esetén?

0
0
Van egy `data.frame` objektumom: (dd <- data.frame(b = factor(c("Mag", "Köz", "Mag", "Ala"), levels = c("Ala", "Köz", "Mag"), ordered = TRUE), x = c("A", "D", "A", "C"), y = c(8, 3, 9, 9), z = c(1, 1, 1, 2))) ## b x y z ## 1 Mag A 8 1 ## 2 Köz D 3 1 ## 3 Mag A 9 1 ## 4 Ala C 9 2 Szeretném több oszlop szerint is sorbarendezni. Mi a leghatékonyabb módja ennek?
  • You must to post comments
0
0
`data.frame` esetén (Figyelem: nem `data.table` !!!) alapvetően az `order` függvényt lehet használni. PL.: dd[with(dd, order(-z, b)), ] ## b x y z ## 4 Ala C 9 2 ## 2 Köz D 3 1 ## 1 Mag A 8 1 ## 3 Mag A 9 1 vagy ugye `with` nélkül, de több hibalehetőséggel: dd[order(-dd$z, dd$b), ] ## b x y z ## 4 Ala C 9 2 ## 2 Köz D 3 1 ## 1 Mag A 8 1 ## 3 Mag A 9 1 Lehet persze ügyeskedni a `sort` függvénnyel is (ami vektorok sorberendezésére találtak ki, de akár az `index.return` paraméter révén, akár a `taRifx` csomag használatával `sort(dd, f= ~ -z + b ) )`, de a bencmark értékek azt mutatják, hogy nem éri meg. Tehát összefoglalóan: a jó megoldás az `order` parancs. Itt jegyezném meg, hogy a `data.table` csomag sok csábító megoldást nyújt ezen a téren is:) Lásd bővebben: [http://stackoverflow.com/questions/1296646/how-to-sort-a-dataframe-by-columns-in-r][1] [1]: http://stackoverflow.com/questions/1296646/how-to-sort-a-dataframe-by-columns-in-r
  • You must to post comments
1 találat mutatása
Új válasz írása

Please first to submit.