2013-07-13 11 views
5

voglio produrre un new dataframe da un old grande (molte variabili) Io uso la funzione cbind.data.frame e va come questoProduzione di un nuovo dataframe da un vecchio dataframe?

new <- cbind.data.frame(old$var1, old$var2, old$var3) 
str(new) 
    'data.frame': 100 obs. of 3 variables: 
$ old$var1  : num 

Perché il var1 ancora appartengono alla old$?
Volevo usare solo new$var1 ma restituisce object not found.

Cosa sto sbagliando?

+10

Perché non solo 'nuovo <- vecchio [c ("var1", "var2", "var3")]'? –

risposta

13

Unire entrambe le altre altre risposte in questo modo:

New <- data.frame("var1" = old$var1, 
        "var2" = old$var2, 
        "var3" = old$var3) 
+0

grazie a tutti per le vostre segnalazioni, mi piace particolarmente questo perché vi dà l'opportunità di cambiare i nomi delle variabili – Pulse

2

Si sta facendo nulla di male, basta rinominare le colonne nella nuova cornice dati utilizzando:

names(new) <- c("var1","var2","var3") 

Ora, si sarà in grado di utilizzare new$var1, e così via.

Spero che questo risolva il tuo problema.

Problemi correlati