Ho difficoltà ad aggiungerne uno in fondo a un altro frame di dati.Aggiunta di un dataframe alla fine di un altro data.frame in R
Ho un frame di dati (chiamiamolo DF1) che ha 1 riga e 5 colonne. Ho un altro dataframe (chiamiamolo DF2) che ha 50 righe e 5 colonne. L'ho impostato in modo tale che le colonne tra i frame di dati BOTH corrispondano - hanno le stesse colonne. Infatti, DF1 è un calcolo basato su DF2.
Questo è ciò che DF1 assomiglia:
row.names pt1 pt2 pt3 pt4
calc 0.93 0.45 0.28 0.54
Questo è ciò DF2 assomiglia:
row.names pt1 pt2 pt3 pt4
SNP1 AA AG AG AA
SNP2 CT CT TC CC
SNP3 GG CG CG <NA>
SNP4 AA GG AG AA
SNP5 <NA> <NA> <NA> <NA>
DF1 si suppone che sia il numero di punti di dati effettivi (# di valori che è non mancante) diviso per il numero totale di valori possibili.
così .. Voglio aggiungere DF1 al fondo del DF2 per assomigliare a questo:
row.names pt1 pt2 pt3 pt4
SNP1 AA AG AG AA
SNP2 CT CT TC CC
SNP3 GG CG CG <NA>
SNP4 AA GG AG AA
SNP5 <NA> <NA> <NA> <NA>
calc 0.93 0.45 0.28 0.54
Quando ho provato ad utilizzare
both.dfs <- rbind(DF1, DF2) # DF1 is first here
DF1 è la prima riga in DF2. Ho bisogno che sia l'ultima riga.
Quando ho provato ad utilizzare
both.dfs <- rbind(DF2, DF1) # DF2 is first here
ottengo un errore:
Warning messages:
1: In `[<-.factor`(`*tmp*`, iseq, value = 0.84) :
invalid factor level, NAs generated
2: In `[<-.factor`(`*tmp*`, iseq, value = 0.84) :
invalid factor level, NAs generated
3: In `[<-.factor`(`*tmp*`, iseq, value = 0.84) :
invalid factor level, NAs generated
4: In `[<-.factor`(`*tmp*`, iseq, value = 0.74) :
invalid factor level, NAs generated
Ho provato unione, ho provato ad aggiungere una nuova riga alla DF2 e poi subbing nei valori di DF2..nulla sembra funzionare! Ho un disperato bisogno di aiuto! Chiunque?
La risposta breve è che si può non (o almeno non dovreste 't). Le colonne dei frame di dati devono essere tutti vettori atomici (cioè lo stesso tipo di dati) e si sta tentando di combinare valori numerici (DF1) e caratteri/fattori (DF2). – joran
"funzionerà" se le colonne di DF2 sono caratteri anziché fattori. Ma probabilmente dovresti trovare un modo diverso per collegare questi set di dati. – joran