Unire Più Set Di Dati In Forex Stata
Stata per i ricercatori: La combinazione di set di dati Questo fa parte otto dei Stata dei ricercatori serie. Per un elenco degli argomenti trattati da questa serie, vedere l'Introduzione. Se siete nuovi a Stata consigliamo vivamente di leggere gli articoli in ordine. La combinazione di due insiemi di dati è un compito comune di gestione dei dati, e uno questo è molto facile da realizzare. Tuttavia, la sua anche molto facile da sbagliare. Prima di combinare set di dati è importante comprendere la struttura di entrambi i set di dati e la logica del modo in cui tu sei la loro combinazione. In caso contrario, si può finire con un set di dati che si pensa è pronto per l'analisi, ma è davvero una sciocchezza assoluta. Stata cerca di assicurarsi youve pensato attraverso quello che stai facendo, ma non posso dirvi ciò che ha senso e ciò che pretende molto. Stata lavora sempre con un insieme di dati alla volta, in modo sarete sempre combinando i set di dati in memoria (l'insieme dei dati di base) con un altro set di dati sul disco (chiamato utilizzando set di dati, per ragioni che saranno chiare quando si vede la sintassi). Aggiunta di set di dati Stata chiama aggiungendo quando si aggiungono le osservazioni dai dati utilizzando impostati al set di dati master. Aggiunta dei senso quando le osservazioni di entrambi i set di dati rappresentano lo stesso genere di cose, ma non le stesse cose. Ad esempio, è possibile aggiungere una serie di dati di persone provenienti da Wisconsin per un insieme di dati di persone da Illinois. Gli insiemi di dati devono avere lo stesso o principalmente le stesse variabili, con gli stessi nomi. Se una variabile appare solo in un set di dati, osservazioni da l'altra serie di dati sarà dato valori mancanti per quella variabile. La sintassi è quella di effettuare un append è semplice: caricare i dati fondamentali stabiliti e quindi digitare: accodare utilizzando dataset dove dataset è il nome del set di dati che si desidera aggiungere. Unire Record di dati Stata chiama fusione quando le osservazioni dei due insiemi di dati sono combinati. Ci sono, in teoria, quattro tipi di unioni: In un'unione uno-a-uno, uno osservazione dal set di dati master è combinato con uno osservazione dal utilizzando set di dati. Una fusione one-to-one ha senso quando le osservazioni di entrambi i set di dati descrivere le stesse cose, ma avere diverse informazioni su di loro. Ad esempio, è possibile unire le risposte di persone hanno dato in onda uno di un sondaggio con le risposte le stesse persone hanno dato in onda due del sondaggio. In uno-a-molti o molti-a-uno merge, un'osservazione da un set di dati è combinato con molte osservazioni dell'altra (la differenza tra uno-a-molti e molti-a-uno è se l'insieme di dati padrone ha il quotmanyquot o utilizzando set di dati). Queste unioni avere senso quando si dispone di dati gerarchici, e un set di dati contiene le informazioni sul livello di una unità mentre l'altro contiene informazioni sul livello di due unità. Ad esempio, è possibile unire le informazioni sui nuclei familiari con informazioni sulle persone che vivono in quelle famiglie. In linea di principio ci sono anche molti-a-molti si fonde. In pratica sono quasi mai utile. Se vi trovate a voler fare una relazione molti-a-molti merge, si dovrebbe ripensare quello che stai facendo. Spesso ciò che si ha realmente bisogno di fare è identificare e identificatori duplicati corretti, e quindi la stampa funzionerà come uno-a-uno o uno-a-molti. In tutte le unioni bene discutere, Stata combina le osservazioni che hanno lo stesso valore di una variabile chiave, tipicamente un ID. È possibile anche partita in base a più variabili (ad esempio, combinare i dati per lo stesso Stato e anno). In uno-a-molti o molti-a-uno merge, è l'identificatore per il livello due unità che è la variabile chiave (ad esempio ID mobilia, non individuali ID). È molto importante che la variabile chiave hanno lo stesso formato in due insiemi di dati. Se un'osservazione in un set di dati non corrisponde con un'osservazione nell'altro, sarà dato valori mancanti per le variabili dell'altro insieme di dati. Dal momento che la fattibilità di un progetto di ricerca, spesso dipende da come molte osservazioni in realtà si fondono (ad esempio, il numero di persone provenienti da onda uno del sondaggio potrebbe essere trovato in onda due) Stata ti dà gli strumenti per capire come molte osservazioni effettivamente fuse e per l'esame quelli che di poco. Se una variabile esiste in entrambi i set di dati, verranno scartati i valori del set di dati di base saranno conservati ed i valori del set di dati utilizzando. A volte questo è ciò che si vuole, ma la sua più probabile che sia un errore. In generale, è necessario impostare il backup dei dati in modo tale che le uniche variabili dei file da unire hanno in comune sono le variabili chiave. La sintassi per una stampa è: unire tipo keyvars usando set di dati Il tipo deve essere 1: 1 (one-to-one), 1: m (uno-a molti), m: 1 (molti-a-uno) o m: m (molti a molti) keyvars è la variabile chiave o variabili e set di dati è il nome del set di dati che si desidera unire. Un esempio di combinazione di set di dati Gli esempi includono diversi file contenenti informazioni studente immaginario a partire dal 2007. scores. dta contiene i punteggi degli studenti su un test standardizzato, demographics. dta contiene informazioni demografiche su di loro, e teachers. dta contiene informazioni sui loro insegnanti. Prendetevi un momento per guardare ogni file, quindi avviare un file do che carica i punteggi. In questo insieme di dati, ogni osservazione rappresenta uno studente. sfogliare e youll vedere che avete un ID studente (id), un ID insegnante (insegnante) e un punteggio per ogni. Il vostro primo compito è quello di aggiungere le informazioni demografiche. In demographics. dta ogni osservazione rappresenta anche uno studente, con le variabili di essere id e razza. Così questo è un lavoro per una stampa uno-a-uno e la variabile chiave è id. merge 1: 1 utilizzando id demografici Stata segnalerà che tutte le 60 osservazioni abbinati. Sarà inoltre possibile creare una variabile chiamata unione. A uno in fusione significa un'osservazione venuto solo dai dati master impostata a due significa che è venuto solo dai dati utilizzando set e tre significa un'osservazione abbinato con successo ed è venuto da entrambi così. In questo caso vediamo che tutte le osservazioni corrispondenti e, quindi, devono fondersi pari a tre, quindi non c'è bisogno di mantenere la variabile. In realtà abbiamo bisogno di cadere (o rinominarlo) prima di fare qualsiasi ulteriore fonde: Successivamente aggiungere informazioni su docenti. In teachers. dta ogni osservazione rappresenta un insegnante, e ogni insegnante ha molti studenti. Ciò rende questo un'unione molti-a-uno (dal momento che molti studenti sono attualmente in memoria e un insegnante è nel usando set di dati). La variabile chiave non è id. dal momento che si riferisce agli studenti, ma insegnante: merge m: 1 insegnante utilizzando docenti Anche in questo caso, tutti i 60 osservazioni unite correttamente, in modo da poter eliminare unione. La combinazione dei dati Panel Ora supporti stavano seguendo questi studenti per più anni. Il panel2007.dta insieme di dati contiene una versione semplificata di questo insieme di dati: basta id e il punteggio. Il panel2008.dta set di dati ha le stesse variabili per un anno diverso. Come si combinano loro il modo corretto di combinarle dipende da quale struttura dati che si desidera. Si tratta di dati gerarchici in cui una unità di livello due è uno studente e una unità di livello uno è un dato di studenti un anno particolare. Così può essere rappresentato in un'ampia forma (una osservazione per studente), o in forma lunga (una osservazione per studente all'anno). Per inserire i dati in forma molto semplicemente sovrapporre i due insiemi di dati utilizzando accodare. Tuttavia, youll bisogno di sapere quale anno ciascuna osservazione rappresenta. Per fare questo, aggiungere una variabile anno per entrambi set di dati, con il valore 2007 per i dati 2007 e il valore 2008 per i dati del 2008. È possibile farlo con il seguente file di fare: Cancella tutto impostato più fuori registro cattura vicino log utilizzando combine1.log, sostituire l'uso panel2007 gen year2007 Salva uso panel2007append panel2008 gen anno2008 accodamento utilizzando panel2007append Salva appendedData, Sostituisci per inserire i dati in forma ampia, eseguire una stampa uno-a-uno con id come variabile chiave. Ma prima è necessario modificare i nomi delle variabili. Ricordiamo che in forma ampia, è i nomi delle variabili che indicano che il livello di un'unità sei parlando. Così, invece di punteggio. è necessario score2007 e score2008. chiaro tutti insieme più fuori registro cattura vicino log utilizzando combine2.log, sostituire l'uso panel2007 rinominare punteggio score2007 salvare uso panel2008 panel2007merge rinominare punteggio score2008 fondono 1: 1 utilizzando id panel2007merge Salva mergedData, sostituire questo tempo youll vedere che una osservazione non corrisponde. È possibile vedere quale digitando: numero di matricola 55 non era in panel2008 e quindi non poteva essere abbinato. Come risultato non abbiamo idea di quello che il suo punteggio del test è stato nel 2008. Purtroppo questo è molto common8212students spostare fuori distretti scolastici tra i test per tutto il tempo. Se l'intero programma di ricerca dipende da avere entrambi i punteggi dei test, potrebbe essere necessario far cadere le osservazioni che dont esistono in entrambi i set di dati. È possibile farlo a questo punto aggiungendo: goccia se merge3 È inoltre possibile specificare quali osservazioni deve essere tenuto direttamente nel comando unione: unire 1: 1 id utilizzando panel2007merge, mantenere (match) mantenere (partita) significa solo mantenere osservazioni che partita . Le alternative sono master e utilizzare. e si possono elencare più di uno. Ad esempio, per mantenere osservazioni che corrispondono e le osservazioni che provengono solo dal set di dati di base, mentre gettando via le osservazioni che provengono solo dal utilizzando set di dati, youd dire tenere (partita master). Problemi comuni con Unisce Unisce sarà scoprire tutti i tipi di problemi con il set di dati (e se non stanno fisso fusione introdurrà nuove). Qui ci sono due più comuni e come risolverli: variabili chiave memorizzati in diversi formati Mentre Stata sarà lieto di abbinare diversi tipi di numeri (INT e galleggianti, per esempio) i numeri delle partite di sopraelevazione e stringhe. ID possono essere memorizzati come sia (fino a quando si sceglie un tipo numerico che ha abbastanza precision8212see Operazioni con i dati) e non è raro trovare che i set di dati memorizzare l'ID in modi diversi. In tal caso, il suo solito migliore per convertire i numeri in stringhe: gen idStringstring (id) cadere id rinominare IDString id La funzione string () prende un numero e lo converte in una stringa. Si può dare un secondo argomento che contiene il formato in cui il numero dovrebbe essere quotwrittenquot se necessario. Duplicare gli ID Se si tenta di fare una fusione e si ottiene un messaggio di errore come id quotvariable non identifica univocamente osservazioni nel master dataquot questo significa che hai ID duplicati nel set di dati menzionato. Questo problema deve essere risolto prima di procedere. Non è sufficiente cambiare il tipo di unione per i dati pertinenti da quotonequot a quotmanyquot sperando di fare il messaggio di errore andare away8212the risultante set di dati non avrà senso per le osservazioni colpite. Una possibile fonte di duplicati è l'errore di arrotondamento dovute al risparmio gli ID in una variabile di tipo inadeguato. In questo caso youll bisogno di tornare ai dati originali e di garantire gli identificatori sono memorizzati come un tipo che sogliono intorno a loro, come a lungo, doppio, o una stringa. Si noti che ai fini della fusione, valori mancanti vengono trattati come qualsiasi altro valore. Se avete osservazioni con ID mancanti Stata li conterà come duplicati. Youll probabilmente per farli cadere prima di fondersi. Ma la maggior parte del tempo ID duplicati derivare da errori nei dati. Youll bisogno di fare qualcosa per loro prima di eseguire la stampa. Avviare un file do che carica il set di dati mergeerror. Questo insieme di dati contiene gli studenti, ma alcuni di loro hanno ID duplicati che hanno bisogno di essere risolto. È possibile vedere quanti problemi si hanno con i duplicati segnalare: i duplicati riportano id Questo spiega come molte osservazioni hanno lo stesso valore di id. L'output ti dice che non appare ID più di due volte, ma dodici osservazioni hanno ID duplicati. Per un ulteriore esame, creare una variabile che ti dice quante copie ci sono di ogni ID: BySort ID: Gen copiesN Poi si può guardare solo le osservazioni problema con: sfogliare se copiesgt1 per le osservazioni con id pari a 9, 26, e 33, le due osservazioni con lo stesso ID sono identici. Questo suggerisce lo stesso studente è stato inserito due volte e si può risolvere il problema, semplicemente lasciando cadere le osservazioni aggiuntive. Faccio con: Si noti che a differenza del comando duplicati rapporto è stato eseguito in precedenza, questo comando non ha una lista-variabili. Questo significa che solo gocce osservazioni duplicati se hanno lo stesso valore per tutte le variabili, non solo id. Si può dare una lista-variabili in modo che le gocce osservazioni se solo quelle variabili hanno gli stessi valori, ma essere molto attenti a farlo. A questo punto i problemi complessi si consiglia di eliminare la variabile copie creato in precedenza e ricrearlo in modo Sfoglia se copiesgt1 mostrerà più le osservazioni che avete già fissato, ma non c'è nessun bisogno di questo insieme di dati. Per le osservazioni con id pari a 64, 74, e 94, le altre variabili mostrano che le osservazioni con lo stesso ID non sono la stessa persona. Questo è un grave problema per la fusione: non potete essere sicuri che quotstudent 64quot in questo set di dati va con il 64quot quotstudent nell'ipotetico altro set di dati. Aggiunta di più variabili può aiutare. Ad esempio, in questo caso, la fusione sia da id e razza permetterebbe di abbinare correttamente i due soggetti con id pari a 94. La fusione da id. gara. e grado permetterebbe di abbinare correttamente i soggetti con id pari a 74. Basta tenere presente che se il set di dati si voleva fondersi con questo si dovesse per l'anno scolastico successivo, come nel nostro esempio precedente youd avere a sottrarre uno dalla sua variabile grado prima. Se si sceglie di seguire questa strada, di ricreare la variabile di copie utilizzando il set completo di variabili che si prevede di corrispondere per la dal prefisso e vedere quanti duplicati sono di sinistra. Nulla vi aiuterà con le due osservazioni con id pari a 64, e in un dato grandi impostare il suo meno probabile che corrispondenza di alcuni più variabili vi permetterà di identificare in modo univoco i soggetti. In tali casi, youll probabilmente bisogno di eliminare tutte le osservazioni non puoi identificare in modo univoco, visto che partita in modo affidabile sopraelevazione qualsiasi di loro. È possibile farlo con: goccia se copiesgt1 Un modo alternativo di combinare insiemi di dati in forma ampia è quello di aggiungerli prima e poi rimodellare. Combinare panel2007 e panel2008 in forma ampia con questo metodo. (Soluzione) Se si combinano i due anni di dati in forma a lungo con accodamento. come si può trovare l'osservazione che pretende molto appaiono nel 2008 (Soluzione) Unire error2007.dta e error2008.dta con la fusione in forma ampia, fissare qualsiasi problema a trovare. Poi aggiungere i due insiemi di dati e cercare di individuare gli stessi problemi. (Soluzione) Ultima revisione: 12292015In Stata, come faccio a unire i dati due set a unire due insiemi di dati in Stata, Ordina su cui si baserà la fusione ogni set di dati sulle variabili chiave. Quindi, utilizzare il comando. merge seguito da un elenco di variabili chiave (s) e set di dati (s). Nella versione Stata 11 e successivamente: unire 1: 1 lista-variabili utilizzando il nome del file, le opzioni Se stai usando Stata versione 10 o più anziani, omettere il 1: 1 specifica. Le osservazioni in ogni set di dati devono essere univoci nella partita merge uno-a-uno. Supponiamo di avere due variabili chiave ID e il nome in due set di dati statistici e la matematica. I seguenti tipi di codice e salva il set di dati stat e quindi ordina il set di dati per la matematica. Poi, mentre il set di dati per la matematica è ancora in memoria, si fonde (utilizzando il set di dati stat) sul variabili chiave ID e il nome: se i dati due insiemi di variabili condividono oltre alle variabili chiave, utilizzare l'opzione di aggiornamento per sostituire i valori mancanti in il file master (in memoria) con i corrispondenti valori non mancanti nel file secondario. Usa, aggiornamento sostituire per sostituire i valori non mancanti nel file master con i corrispondenti valori non mancanti nel file secondario. Per utilizzare il menu a discesa in Stata versione 11 e successive: Dataxa0gt Combinexa0Datasetsxa0gt Mergexa0Twoxa0Datasets In caso di domande sull'utilizzo di software statistico e matematico presso l'Indiana University, contattare Research Analytics. La ricerca Analytics si trova nel campus UI Bloomington a Woodburn Sala 200 personale sono disponibili per la consultazione Lunedi-Venerdì 9 am-noon e su appuntamento.
Comments
Post a Comment