Domanda

Sarò analizzando grande quantità di dati relativi al traffico di rete a breve, e sarà pre-elaborare i dati al fine di analizzarlo. Ho trovato che R e SPSS sono tra gli strumenti più popolari per l'analisi statistica. Sarò anche la generazione di un bel po 'di grafici e tabelle. Pertanto, mi chiedevo che cosa è la differenza fondamentale tra questi due software.

Non sto chiedendo che uno è meglio, ma volevo solo sapere quali sono la differenza in termini di flusso di lavoro tra i due (oltre al fatto che SPSS ha una GUI). Sarò in gran parte lavorando con script in entrambi i casi comunque, quindi ho voluto conoscere le altre differenze.

È stato utile?

Soluzione

Io lavoro in una società che utilizza SPSS per la maggior parte della nostra analisi dei dati, e per una serie di ragioni - ho iniziato cercando di utilizzare R per sempre di più della mia analisi. Alcuni dei più grandi differenze che ho incorrere in comprendono:

  1. Output di tavoli - SPSS ha tabelle di base, tabelle generali, tabelle personalizzate, ecc che sono tutti in uscita a quella visualizzatore di dati nifty o come diavolo si chiamano. Questi possono essere facilmente trasportati relativamente ai documenti di Word o fogli di Excel per ulteriori analisi / presentazione. La funzione equivalente in R implica la conoscenza LaTex o utilizzando un odfWeave o Lyx o qualcosa del genere.
  2. Etichettatura dei dati -> SPSS fa un lavoro piuttosto bene con le etichette di variabili e etichette dei valori. Non ho trovato una soluzione robusta per R per raggiungere questo stesso compito.
  3. Si parla che si sta per essere scripting maggior parte del lavoro, e personalmente trovo la sintassi di scripting di SPSS assolutamente orrendo, al punto che ho smesso di lavorare con SPSS, quando possibile. sintassi R sembra molto più logico e segue la programmazione più da vicino gli standard e c'è una comunità molto attiva a fare affidamento su si dovrebbe incorrere in problemi (così per esempio). Non ho trovato una buona comunità SPSS a fare domande su quando mi imbatto in problemi.

altri hanno sottolineato alcune delle grandi differenze in termini di costo e funzionalità dei programmi. Se si dispone di collaborare con gli altri, il loro livello di comfort con SPSS o R dovrebbe svolgere un fattore come non si vuole essere l'unico gruppo che può lavorare su o modificare uno script che hai scritto in futuro.

Se avete intenzione di essere l'apprendimento R, questo post sul sito web di scambio statistiche ha un sacco di grandi risorse per l'apprendimento R: https://stats.stackexchange.com/questions/138/resources-for-learning-r

Altri suggerimenti

Ecco qualcosa che ho postato per il R-help mailing list un po 'indietro, ma penso che dà una buona panoramica di alto livello della differenza generale R e SPSS:

  

Quando si parla di cordialità utente   di software mi piace il   analogia di auto contro bus:

     

Gli autobus sono molto facili da usare, basta   bisogno di sapere quale autobus per ottenere su,   dove ottenere, e dove scendere   (Ed è necessario pagare il prezzo della corsa). Macchine   d'altra parte richiede molto di più   lavoro, è necessario disporre di un certo tipo di   mappa e indicazioni (anche se la mappa è   nella tua testa), è necessario mettere a gas   di tanto in tanto, è necessario sapere   le regole della strada (avere un certo tipo   della patente di guida). Il grande vantaggio   della vettura è che si può prendere un   mucchio di posti che l'autobus non lo fa   andare ed è più veloce per alcuni viaggi   che richiederebbe transfering tra   bus.

     

L'utilizzo di questo programma analogia come SPSS   sono autobus, facile da usare per la   cose standard, ma molto frustrante   se si vuole fare qualcosa che è   Non già preprogrammato.

     

R è un 4 ruote motrici SUV (sebbene   ecologico) con una moto   sul retro, un kayak sulla parte superiore, buona   a piedi e scarpe da corsa nel   sede pasenger, e alpinismo   e speleologia marcia nella parte posteriore.

     

R si può portare ovunque vuoi andare   se si prende il tempo di Leard come utilizzare   le attrezzature, ma che sta per   richiedere più tempo rispetto apprendimento in cui il   fermate degli autobus sono in SPSS.

Non ci sono GUI per R che lo rendono un po 'più facile da usare, ma anche limitare la funzionalità che può essere utilizzato così facilmente. SPSS ha lo scripting, che lo porta al di là di essere un semplice bus, ma la filosofia generale della SPSS manzi persone in direzione di GUI piuttosto che gli script.

Il flusso di lavoro iniziale per SPSS comporta giustificare scrivendo un grosso assegno di grasso. R è liberamente disponibile.

R ha un unico linguaggio di 'script', ma non credo di così, R è davvero un linguaggio di programmazione con grande manipolazione dei dati, statistiche e funzionalità grafiche integrate. SPSS ha 'Syntax', 'script 'ed è anche script in Python.

Un altro biggie è che SPSS comprime i dati in una struttura di tabella spreadsheety. Trattare con altre strutture di dati è probabilmente molto difficile, ma viene naturalmente a R. Non saprei da dove cominciare la gestione dei dati di tipo grafico di rete in SPSS, ma c'è un pacchetto di farlo per R.

Anche con R è possibile integrare il flusso di lavoro con la vostra segnalazione utilizzando Sweave - si scrive un documento con pezzi incorporati di codice R che generano trame o tabelle, eseguire il file attraverso il sistema e viene fuori il report in formato PDF. Ottimo per quando si vuole fare un rapporto settimanale, o si fa un corpo di lavoro e poi il capo ti dà un set di dati aggiornati. Re-run, leggere sopra, il suo fare.

Ma si sa, la vostra chiamata ...

Bene, sei un programmatore decente? Se si, allora vale la pena di imparare R. Si può fare di più con i vostri dati, sia in termini di manipolazione e modellazione statistica, di quanto si può con SPSS, e i grafici sarà probabilmente anche meglio. D'altra parte, se non hai mai veramente programmato prima, o trovare l'idea di trascorrere diversi mesi diventando un programmatore intimidatorio, probabilmente otterrete più valore di SPSS. Il livello di roba che si può fare con R senza immergersi nel suo potere come un linguaggio di programmazione a tutti gli effetti, probabilmente non giustifica lo sforzo.

C'è un'altra opzione - collaborare. Conoscete qualcuno che si può lavorare con il vostro progetto (non si dice se è accademica o industriale, ma in ogni modo ...), che conosce bene R?

C'è un interessante (e ragionevolmente equo) confronto tra un certo numero di statistiche strumenti qui

http://anyall.org/blog/2009/02/comparison-of-data-analysis-packages-r-matlab-scipy-excel-sas-spss-stata/

Io lavoro con sia in una società e posso dire quanto segue:

  • Se si dispone di un grande team di persone diverse (non tutti gli scienziati di dati), SPSS è utile perché è semplice (relativamente) per capire. Ad esempio, se gli utenti stanno per eseguire un modello per ottenere un output (stime di vendita, ecc), SPSS è chiaro e facile da usare.

Detto questo, trovo R meglio in quasi ogni altro senso:

  • R è più veloce (anche se, a volte discutibile)
  • Come affermato in precedenza, la sintassi in SPSS è pessima (io non lo ripeterò mai abbastanza). D'altra parte, R può essere doloroso per imparare, ma ci sono tonnellate di risorse on-line e, alla fine, si paga molto di più a causa delle diverse cose che puoi fare.
  • Anche in questo caso, come tutti gli altri, dice, il cielo è il limite con R. Tonnellate di pacchetti, risorse e più importante: indepedence a fare come ti pare. Nella mia organizzazione abbiamo alcune funzioni di altissimo livello che ottenere un sacco fatto. La parte più difficile è la creazione di una volta, ma poi svolgere attività che SPSS avrebbe groviglio in una rete infinita di tele complicato. Questo è particolarmente vero per le cose come i cicli.

Si è spesso trascurato, ma R ha anche un sacco di caratteristiche di cooperare tra le squadre (integrazione GitHub con RStudio, e di facile costruzione pacchetto con DevTools).

In realtà, se tutti i membri dell'organizzazione sa R, tutto ciò che serve è quello di mantenere un pacchetto di base su GitHub condividere tutto. Questo naturalmente non è la norma, che è il motivo per cui penso SPSS, anche se un prodotto peggiore, ha ancora un mercato.

Non ho i dati per esso, ma dalla mia esperienza posso dirvi una cosa:

SPSS è molto più lento di R . (E con un sacco, voglio dire un sacco)

La grandezza della differenza è probabilmente grande quanto quello tra C ++ e R .

Per esempio, non ho mai dovuto aspettare più di un paio di secondi in R. Utilizzando SPSS e dati simili, ho avuto i calcoli che hanno avuto più di 10 minuti.

Come nota a margine non correlato: Ai miei occhi, nella recente discussione sulla velocità di R, questo punto è stato in qualche modo trascurato (vale a dire, il confronto con SPSS). Inoltre, mi stupisco di come questa discussione spuntato per un po 'e silenziosamente scomparve di nuovo.

Ci sono alcuni grandi risposte di cui sopra, ma cercherò di fornire i miei 2 centesimi. Il mio reparto si basa completamente sul SPSS per il nostro lavoro, ma negli ultimi mesi, mi hanno fatto uno sforzo consapevole per imparare R; in parte, per alcuni dei motivi dettagliato sopra (velocità, grandi strutture di dati, pacchetti disponibili, ecc.)

Detto questo, qui ci sono un paio di cose che ho raccolto lungo il percorso:

  1. A meno che non si dispone di una certa esperienza di programmazione, penso che la creazione di tabelle di sintesi in CTABLES distrugge ogni opzione disponibile in R. Fino ad oggi, sono a conoscenza del pacchetto che può replicare ciò che può essere creata usando Tabelle personalizzate.

  2. SPSS sembra essere più lento quando script, e sì, la sintassi SPSS è terribile. Detto questo, ho trovato che scipts in SPSS possono sempre essere migliorate, ma utilizzando il comando EXECUTE con parsimonia.

  3. SPSS e R possono interfacciarsi con l'altro, anche se sembra che sia unidirezionale (solo se si utilizza R all'interno di SPSS, non viceversa). Detto questo, ho trovato questo per essere di scarsa utilità diversa se voglio usare ggplot2 o per alcuni altre tecniche di gestione avanzata dei dati. (Io disprezzo SPSS macro).

  4. Ho sempre pensato che il lavoro "segnalazione", creato in SPSS è di gran lunga inferiore ad altre soluzioni. Come accennato in precedenza, se è possibile sfruttare lattice e Sweave, vi sarà molto felice con i flussi di lavoro efficienti.

  5. Sono stato in grado di fare un po 'di analisi avanzata, sfruttando OMS in SPSS. Quasi tutto può essere indirizzato a un nuovo insieme di dati, ma ho trovato che la maggior parte degli utenti di SPSS non utilizzare questa funzionalità. Inoltre, se si considerano esempi in R, ci si sente proprio più "facile" che usare OMS.

In breve, mi trovo con SPSS quando non riesco a capirlo in fretta in R, ma io sinceramente avere tutte le intenzioni di allontanarsi da SPSS e l'utilizzo di R interamente ad un certo punto in un prossimo futuro.

SPSS fornisce una GUI per integrare facilmente i programmi di ricerca esistenti o svilupparne di nuovi. Per ulteriori informazioni, vedere la SPSS Comunità su IBM Opere sviluppatori.

@Henrik, ho fatto la stessa operazione che hai citato ( C ++ e R ) su SPSS. E si è scoperto che SPSS è più veloce rispetto alla R su questo. Nel mio caso SPSS è aprox. 7 volte più veloce. Sono sorpreso su di esso.

Ecco un codice che ho usato in SPSS.

data list free
 /x (f8.3).
begin data
1
end data.

comp n = 1e6.

comp t1 = $time.

loop #rep = 1 to 10.
comp x = 1.
loop #i=1 to n.
comp x = 1/(1+x).
end loop.
end loop.

comp t2 = $time.

comp elipsed = t2 - t1.

form elipsed (f8.2).

exe.

Guarda questo video perché è un bene di combinare SPSS e R ...

collegamento

http://bluemixanalytics.wordpress.com/2014/08/29/7-good-reasons-to-combine-ibm-spss-analytics-and-r/

Se si dispone di una copia compatibile di R installato, è possibile connettersi ad esso da IBM SPSS Modeler e realizzare la costruzione del modello e modello di scoring utilizzando algoritmi personalizzati R che possono essere implementate in IBM SPSS Modeler. È inoltre necessario avere una copia di IBM SPSS Modeler - Essentials for R installato. IBM SPSS Modeler -. Essentials for R fornisce gli strumenti necessari per iniziare a sviluppare applicazioni personalizzate R per l'utilizzo con IBM SPSS Modeler

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top