einen Datenrahmen Stellen Sie sich vor:Subsetting auf Zeilenebene, aber Wert muss Spaltenname
set.seed(1234)
data<-data.frame(id = sample(letters, 26, replace = FALSE),
a = sample(1:10,26,replace=T),
b = sample(1:10,26,replace=T),
c = sample(1:10,26,replace=T))
Ich mag, halten für jeden id
, die Spaltennamen, in dem die größten Wert liegt. Das Ergebnis, das ich suche, ist ein Datenrahmen mit den Abmessungen 26 x 2 mit einer Spalte für id
und Spalte für largest_value_var
. Die largest_value_var
würde entweder a
, b
oder c
enthalten.
Bisher konnte ich den Variablennamen extrahieren, mit dem der Maximalwert zugeordnet ist, mit diesem:
apply(data[,-1], 1, function(x) c(names(x))[which.max(x)])
Aber ich kann nicht das Ergebnis ganz scheinen, ich in ein möchten Dataframe ... Jede Hilfe wird geschätzt.
Ich mochte Ihre Kommentarlösung besser als diese. Warte ... du hast es entfernt? –
@BondedDust, nein. Ich habe es Richard gegeben, seit er an Max.col dachte. Oh, und vielen Dank für Ihren anderen Kommentar heute :-) – A5C1D2H2I1M1N2O1R2T1