2016-10-17 4 views
1

Meine Datenrahmen (df) mit Spaltennamen "8A_1" und 8A_2" ist:Wie verwendet man Variablenlabel anstelle von Variablennamen in r-Plots?

8A_1 8A_2 
1  2 2 
2  4 3 
3  4 4 
4  4 3 
5  4 3 
6  1 4 
7  2 4 
8  2 4 
9  4 3 
10 4 4 

Die Variablenlabels sind (die auf die Variablen mit Hilfe des Pakets Hmisc hinzugefügt werden)

var.labels = 
    c("8A_1"="Variable 1", 
     "8A_2" = "Variable 2") 



library(Hmisc) 
    label(df) = lapply(names(var.labels), 
        function(x) label(df[,x]) = var.labels[x]) 

var.labels 8A_1 8A_2 "Variable 1", "Variable 2"

plot (df$"8A_1", df$"8A_2")

Der obige Befehl markiert df $ "8A_1" und df $ "8A_2" in den Achsen. Es ist nicht die Variable Labels, die ich möchte. Wie kann ich Variablenlabels anstelle von Variablennamen in Plots oder anderen statistischen Analysen erhalten (wie es beispielsweise in SPSS geschieht)?

Antwort

1

Sie so etwas wie dieses

plot (df$"8A_1", df$"8A_2", xlab=label(df)[1], ylab=label(df)[2]) 

versuchen können, wenn Sie die Variablennamen in lm ändern möchten, versuchen Sie dieses

var.labels = 
    c("8A_1"="Variable_1", 
    "8A_2" = "Variable_2") 
names(df) <- var.labels[names(df)] 
lm(as.formula(paste(make.names(var.labels), collapse="~")), data=df) 
+0

Dank dieser Plotbefehl funktioniert prima. In anderen Befehlen ist das Ergebnis jedoch nicht wie erwartet. Beispielsweise. das folgende ergibt das Ergebnis, –

+0

lm (df $ "8A_1" ~ df $ "8A_2", xlab = label (df) [1], ylab = label (df) [2]) Anruf: lm (Formel = df $ "8A_1" ~ df $ "8A_2", xlab = Label (df) [1], YlaB = Label (df) [2]) Koeffizienten: (Intercept) df $ "8A_2" 1,5174 0,4998 Warnmeldung: In lm.fit (x, y, Versatz = Versatz, singular.ok = singular.ok, ...): zusätzliche Argumente c ("'xlab'", "'ylab'") werden ignoriert. > –

+0

Sie können nicht Xlab, YLab Argumente in lm verwenden –

Verwandte Themen