Wie mit den Faktoren und Numerische Vektoren in R-Modelle und Berechnungen zur Arbeit

Wenn Sie mit Faktoren in R arbeiten, die numerische Werte wie Ebenen haben, müssen Sie besonders vorsichtig sein, wenn diese Faktoren in Modellen und anderen Berechnungen verwenden. Zum Beispiel konvertieren Sie die Anzahl der Zylinder in der Einbau-Dataset mtcars zu einem Faktor wie folgt aus:

> cyl.factor lt; - as.factor (mtcars $ Zyl)

Wenn Sie die mittlere Anzahl der Zylinder wissen wollen, können Sie folgendes tun versucht sein:

> Median (as.numeric (cyl.factor)) [1] 2

Dieses Ergebnis ist falsch, da die minimale Anzahl der Zylinder vier ist. R wandelt die interne Darstellung des Faktor Zahlen, nicht die Etiketten. So bekommt man Zahlen von eins zu der Anzahl der Ebenen anstatt der ursprünglichen Werte beginnen.

Um richtig ein Faktor seiner ursprünglichen numerische Werte umwandeln, können Sie zunächst den Faktor Charakter verwandeln und dann numerisch. Aber auf sehr großen Daten wird diese schneller mit dem folgenden Konstrukt durchgeführt:

> As.numeric (Level (cyl.factor)) [cyl.factor]

Mit diesem Code erstellen Sie einen kurzen Vektor mit den Ebenen als numerische Werte und danach die interne Integer-Darstellung des Faktors um den richtigen Wert zu wählen.

Obwohl häufig R einen numerischen Vektor zu einem Faktor bei Bedarf automatisch umwandelt, tut es nicht so, wenn die beiden numerischen Vektoren und Faktoren verwendet werden können. Wenn Sie modellieren möchten, zum Beispiel, die Kilometerleistung eines Autos auf die Anzahl der Zylinder, erhalten Sie ein anderes Modell, wenn Sie die Anzahl der Zylinder als numerischer Vektor oder als Faktor verwendet werden.

Die Interpretation der beiden Modelle ist völlig anders, und viel hängt davon ab, was genau wollen Sie tun. Aber man muss sich bewusst sein, dass, oder Sie können das falsche Modell zu interpretieren sein.

Menü