Erstellen Sie eine neue variable aus einer lookup-Tabelle
Ich habe folgende Spalten in meinem Datensatz:
presult aresult
I single
I double
I triple
I home run
SS strikeout
Ich würde gern noch eine Dritte Spalte "Grundlagen", die abhängig ist der Wert das Ergebnis in aresult Spalte.
Zum Beispiel, ich möchte Grundlagen 1 für eine Einzel -, 2 Doppel -, 3 Dreibettzimmer, 4 für ein home-run, und 0 für einen strikeout.
In der Regel würde ich erstellen Sie die neue variable wie diese:
dataset$base<-ifelse(dataset$aresult=="single", 1, 0)
Das problem ist, dass ich nicht weiß, wie man code, der die neue variable in ohne Einstellung alle anderen Variablen auf null.
Du musst angemeldet sein, um einen Kommentar abzugeben.
definieren Sie Ihre lookup-Tabelle
dann join von plyr
Hier ist, wie zu verwenden, eine benannte Vektor, der für die Suche:
Definition von Testdaten:
Definieren Sie einen benannten numerischen Vektor mit den Punkten:
Vektor-Indizierung zu entsprechen, die erzielt gegen-Ergebnisse:
Zusätzliche Informationen:
Wenn Sie nicht wollen, zu konstruieren, die mit Namen vector von hand sagen, dass Sie in dem Fall, wo Sie große Mengen an Daten, dann tun Sie es wie folgt:
(Oder Lesen Sie die Werte und Namen von vorhandenen Daten. Der Punkt ist der Aufbau eines numerischen Vektor und dann ordnen Sie die Namen.)
Alternative zu Dieter ' s Antwort:
Je nach Ihrer Daten.Faktor() konnte weggelassen werden, da in vielen Fällen strings Faktor, der standardmäßig z.B. mit Lesen.Tabelle
factor
stattas.factor
und geben Sie die Ebenen/Etiketten, aber Sie wollen.