Ich lerne R (Version 3.1.2) zu verwenden, so kann dies als eine Frage kommen, aber ich habe Probleme beim Bestellen einer Teilmenge eines Datenrahmens. Wenn ich den mtcars Datenrahmen unter Verwendung attach(mtcars)
benutze, kann ich ihn einfach unter Verwendung ord.cars <- mtcars[order(hp),]
bestellen. Das Problem ist, wenn ich eine Teilmenge verwenden, lassen Sie uns sub.cars <- subset(mtcars, hp > 120)
sagen und versuchen, es zu bestellen ord.sub <- sub.cars[order(mpg),]
verwenden, ist das Ergebnis folgendes:R Sortierdaten Teilmenge
mpg cyl disp hp drat wt qsec vs am gear carb
NA NA NA NA NA NA NA NA NA NA NA NA
Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4
NA.1 NA NA NA NA NA NA NA NA NA NA NA
NA.2 NA NA NA NA NA NA NA NA NA NA NA
NA.3 NA NA NA NA NA NA NA NA NA NA NA
NA.4 NA NA NA NA NA NA NA NA NA NA NA
Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4
Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4
NA.5 NA NA NA NA NA NA NA NA NA NA NA
Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3
NA.6 NA NA NA NA NA NA NA NA NA NA NA
Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4
NA.7 NA NA NA NA NA NA NA NA NA NA NA
Chrysler Imperial 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4
Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2
NA.8 NA NA NA NA NA NA NA NA NA NA NA
NA.9 NA NA NA NA NA NA NA NA NA NA NA
Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3
NA.10 NA NA NA NA NA NA NA NA NA NA NA
NA.11 NA NA NA NA NA NA NA NA NA NA NA
AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2
Camaro Z28 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4
Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2
Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4
Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6
Maserati Bora 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8
Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3
NA.12 NA NA NA NA NA NA NA NA NA NA NA
NA.13 NA NA NA NA NA NA NA NA NA NA NA
NA.14 NA NA NA NA NA NA NA NA NA NA NA
Warum ist R setzen, wie NAs alle Zeilen zurück, die aus dem gelassen wurden Teilmenge?
Vielen Dank im Voraus!
Ich vermute, das ist ein Problem im Zusammenhang mit Ihrer Verwendung von 'attach()', die nicht in R empfohlen wird. Versuchen Sie Folgendes: Lösen Sie den Datensatz und verwenden Sie dann '' '' '' '' '' Sie mögen 'with()', um Ihre Daten zu unterteilen: 'detach (mtcars); ord.cars <- mtcars [Reihenfolge (mtcars $ hp),]; sub.cars <- Teilmenge (mtcars, hp> 120); ord <- sub.cars [order (sub.cars $ mpg),] '. Funktioniert das wie erwartet? –
@beginneR Bitte posten Sie das als Antwort. – Thomas
Roger that, @Thomas :) –