2012-09-11 11 views
46

Sto cercando di capire perché lo sviluppo si è spostato dal pacchetto reshape a reshape2. Sembrano essere funzionalmente uguali, tuttavia, non sono in grado di eseguire l'aggiornamento a reshape2 attualmente a causa di una versione precedente di R in esecuzione sul server. Sono preoccupato per la possibilità di un bug importante che avrebbe spostato lo sviluppo in un pacchetto completamente nuovo invece di continuare semplicemente lo sviluppo di reshape. Qualcuno sa se c'è un grosso difetto nel pacchetto reshape?reshape vs. reshape2 in R

+0

'' reshape2' sostituito reshape'. Ma qual è la tua domanda? – Andrie

+1

Hai trovato i documenti ufficiali giusti?http://cran.r-project.org/web/packages/reshape2/reshape2.pdf Che ne dici di questa spiegazione su come usare reshape2? http://wiki.stdout.org/rcookbook/Manipulating%20data/Converting%20data%20between%20wide%20and%20long%20format/ – Wilduck

+0

sì, ho visto i documenti ufficiali. darò un'occhiata al tuo secondo link, grazie. sto cercando di capire cosa è cambiato? in che modo 'reshape2' è diverso da' reshape'? – Alex

risposta

61

reshape2 lasciare Hadley effettuare un riavvio reshape che era molto, molto più veloce, evitando allo stesso tempo di eliminare le dipendenze e le abitudini delle persone.

https://stat.ethz.ch/pipermail/r-packages/2010/001169.html

Reshape2 è un riavvio del pacchetto di rimodellare. Sono passati più di cinque anni dal dalla prima versione del pacchetto, e in quel momento ho imparato una quantità enorme di programmazione R e come lavorare con i dati in R. Risagoma2 usa quella conoscenza per creare un nuovo pacchetto per rimodellare i dati molto più focalizzati e molto più veloci.

Questa versione migliora la velocità a scapito della funzionalità, quindi ho rinominato in reshape2 per evitare problemi agli utenti esistenti. Sulla base del feedback degli utenti, potrei reintrodurre alcune di queste funzionalità.

Cosa c'è di nuovo in reshape2:

  • notevolmente più veloce e più efficiente della memoria grazie ad un gran algoritmo migliore di fondo che utilizza la potenza e la velocità di sottoinsiemi nella misura massima, nella maggior parte dei casi, solo facendo un singola copia dei dati.

  • cast è sostituita da due funzioni a seconda del tipo di uscita: dcast produce i frame di dati, e acast produce matrici/array.

  • margini multidimensionali sono possibili: grand_row e grand_col sono stati eliminati: ora il nome del margine si riferisce al la variabile che ha il suo valore impostato (tutti).

  • alcune funzioni sono state rimosse come il gestore | getto, e la capacità di ritornare valori multipli da una funzione di aggregazione. Sono ragionevolmente sicuro che entrambe queste operazioni siano meglio eseguite da plyr.

  • una nuova sintassi getto che consente di rimodellare in base a funzioni
    di variabili (in base alla stessa sintassi di base come plyr):

  • migliori pratiche di sviluppo come spazi dei nomi e le prove.

+0

Grazie Matt! Apprezzalo pubblicando questo dalla lista di posta al forum più familiare pubblicamente qui. – isomorphismes

+1

* la possibilità di restituire più valori da una funzione di aggregazione * Vedere domanda correlata: http://stackoverflow.com/questions/21477040/reshape2-multiple-results-of-aggregation-function – landroni

Problemi correlati