2016-07-14 4 views
-1

Ich habe nicht in der Lage gewesen, überall die Antwort auf meine Frage zu finden, also hier geht:Recoding Perzentile: Funktion anstelle von for-Schleife

Ich mag würde wissen, wie eines mit den Variablennamen für Schleife zu tun, in ein Datenrahmen.

for (EACH VARIABLE in DATAFRAME){ 
    operation 
    } 

Ich habe versucht, verschiedene Sorten von i in names(df) etc, ohne Erfolg.

Was ich tun möchte, ist einfach. Ich möchte Variablen umkodieren: die obere X-te Perzentil = 1, Rest = 0. ich in der Lage gewesen, dies zu tun, wie folgt:

j <- ntile (df$variable, 100) 
    newdf$variable_percentile <-j 
    newdf$variable_binomial <- 0 
    newdf$variable_binomial[j>x] <-1 

Ich würde die Hilfe bei der Schleife für diese zu schätzen wissen, oder einen Weg, dies zu tun einfacher. Vielleicht mit einer Funktion und bewerben?

Mit freundlichen Grüßen Lian

Antwort

0

dieser Code mir von Rob zur Verfügung gestellt wurde Wanders

indicator <- function(variable, quantile) { 
    return(.bincode(variable,breaks=c(0,quantile(variable,probs=quantile[[1]],max(variable)),include.lowest=TRUE)-1) 
} 

Indikator (Daten, 90) wird nun die höchsten 10 Prozent als 1 codieren und den Rest als 0

Verwandte Themen