omforma dina Data i Stata
ofta när du importerar data kommer dina data att vara i brett format. Bredformat är när varje person tar upp en rad med alla sina observationer som sprider sig över sidan. Hur Stata kör upprepade mått ANOVAs kräver dock att data är i långt format. Långt format är när varje observation av varje person är sin egen linje. Även om detta är oerhört tråkigt att byta för hand, gör kommandot reshape
att växla mellan brett och långt format nästan enkelt. Bäst av allt är det helt reversibelt.
använda kommandot reshape kräver några saker av dina data. Den första av dessa är att varje person har en unik identifierare, som ett ID-nummer. Om dina data för närvarande inte innehåller en sådan identifierare kan du lägga till en godtycklig eftersom det bara är där för Stata att veta vilka datapunkter som går med vilken individ. Det enklaste sättet att göra detta är att skriva generate id= _n
i kommandofönstret. _n
är statas sätt att hänvisa till radnumren och så kommer det här kommandot att generera en ny numerisk variabel som identifierar det första fallet i din dataset som 1 och sedan siffror de som följer i följd. Se till att du lägger ett mellanslag mellan =
och _n
eller kommandot fungerar inte. Även om det här kommandot fungerar om dina data är i stort format fungerar det inte om dina data är i långt format.i det här fallet måste du ange identifieraren manuellt så att data grupperas korrekt.
det enda andra att vara medveten om när man byter från ett långt till brett dataformat är att Flera observationer måste ha ett liknande namngivningsschema. Till exempel, om jag har tre lyckoobservationer skulle jag vilja att de skulle ha namn som hap1, hap2 och hap3. Detta namngivningsschema berättar för Stata att de är olika observationer av samma variabel. Om dina variabler var till exempel hap1, happy2 och hap3, skulle du rename happy2 hap2
och fortsätt sedan.
grundkommandot reshape
följs av vilken riktning long
eller wide
du vill omforma data. Sedan kommer variablerna att omformas. Nästa är den första delen av argumentet i()
följt av dimensionen du omformar på j( reshape (den officiella Stata Data Management manual) och involverar flera nivåer av sorteringsvariabler. Klicka här för att ladda ner dessa rader av data att spela med. Nedan visas data i det längsta möjliga formatet (det laddas ner i det här formatet).
nedan finns samma data i största möjliga format:
följande diagram förklarar hur man växlar mellan dessa olika format, vilket ger både en god uppfattning om reshape fulla kapacitet och hur man använder dem. Obs! Om du går från lång till bred, krävs flera reshape
-kommandon.
detta exempel introducerar också två nya alternativ för kommandot reshape
. Den första av dessa, @
berättar för Stata var man ska sluta läsa namnet på en variabel. Så om variabeln heter inc80, och jag ville att variabeln skulle vara inc när den bytte format, skulle jag ange reshape inc@
genom att sätta @ – tecknet före inc, Stata vet att göra inc för män minc och inc för kvinnor finc, med hjälp av sexvariabeln som anges i j, f och m. om det inte är meningsfullt, leka med det i några minuter.
det andra användbara alternativet är string
som berättar för Stata att variabeln som anges i j()
är en strängvariabel.
Slutligen notera att reshape
är något reversibel. Specifikt kan du flytta tillbaka en iteration. Om du till exempel skriver reshape long
efter att du har omformat data för att vara bred, återställer Stata data.
tillbaka till handledning
tillbaka till upprepade åtgärder ANOVA