Stata - deskriptiv stat. til LyX

Svar på indlæg
Af Maria Juul Hansen @ 24 apr. 2014 11:25

Hej,

Jeg har en tabel med deskriptiv statistik, som jeg på en eller anden måde gerne vil kunne indsætte i et LyX-dokument. Hvordan gøres det nemmest? 

Jeg har forsøgt at gøre noget i stil som vist i tråden her:

sort insured
by insured: eststo: quietly estpost sum unemp insured unskilled skilled upper_secondary yeardum1 yeardum2 [og en række yderligere variable]

. esttab using desk_stat.txt, cells("mean sd min max") label nostar replace ///
title(Descriptive statistics\label{tab1})

Det ser således ud: desk_stat 

Først og fremmest: hvordan kan jeg ændre strukturen på mine variabelnavne? Jeg ville jeg gerne have en overskrift i variabelkolonnen med "Time dummies" og så årstallene nedenunder og tilsvarende med "Education dummies".

Dernæst ville jeg gerne kunne ændre (1) og (2) i kolonneoverskrifterne fra min by-gruppe, så der kom til at stå "Uninsured" hhv. "Insured".

Derefter vil jeg gerne kunne indsætte den i LyX, vil det kræve, at den gemmes til brug i LaTex og derfra videre til LyX? 

På forhånd tak!

Vh. Maria


Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Simon Michaelsen @ 24 apr. 2014 12:30

Hej Maria,

Prøv at brug outreg2 i stedet. Jeg har bedre erfaring med den i forhold til at få output i LyX.

 

 

Svar og citér
Simon Michaelsen

Simon Michaelsen

Antal indlæg: 1
Medlem siden: d. 24. april 2014
Af Rud Faden @ 24 apr. 2014 19:21

Du kan indsætte TeX kode direkte i lyx ved at gå til Insert -> Tex Code. (eller tryk ctrl + L).

En anden mulighed end at eksportere direkte fra STATA til TeX er at eksporter det til Excel (højreklik på din tabel i outputtet på stata og tryk copy as table og så paste i Excel). Her efter kan du redigere din tabel og så bruge Excel2latex for at få TeX koden. 

Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Anders Munk-Nielsen @ 25 apr. 2014 11:15

Til at skifte overskrifter fra (1) og (2) til Insured, uninsured, prøv at bruge optionsne "nonumber" og "mgroups("Insured" "Uninsured", pattern(1 1))". Kan ikke lige gennemskue om det vil virke, ellers google esttab mgroups. 

Der er vist en kommando som indsætter "overskrifter" for grupper af variable ude i siden, men jeg kan ikke lige finde den. 

Alternativt lav nogle gode labels for alle dine variable og så brug option'en "label". 

Generelt vil jeg anbefale at browse denne side: http://repec.org/bocode/e/estout/advanced.html der er helt vildt mange fede små kommandoer og billeder af resultaterne :)

Svar og citér
Anders Munk-Nielsen

Anders Munk-Nielsen

Antal indlæg: 39
Medlem siden: d. 01. juni 2011
Af Maria Juul Hansen @ 25 apr. 2014 13:37

Tak for alle tips, jeg prøver dem af :-)

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Maria Juul Hansen @ 27 apr. 2014 10:21

Endnu et spørgsmål: jeg indsætter en tabel i LyX, men den er alt for bred til at passe ind på siden:

Jeg har forsøgt forskellige løsningsforslag som foreslået fx her og her, men når jeg indsætter noget i ERT før/efter min tabel, som er indsat som flydende element får jeg fejlmeddelelsen 

(det er, når jeg bruger metoden foreslået i førstnævnte link).

Findes der en måde at komme mit problem til livs på, som ikke involverer at skrive noget i ERT? Eller kan fejlmeddelelserne løses?


Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Rud Faden @ 27 apr. 2014 11:32

Hvad er Est? 

Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Anders Munk-Nielsen @ 27 apr. 2014 11:39

resizebox kan noget meget sejere end det, du bruger den til. Prøv med

\resizebox{0.75 \textwidth}{!}{

[tabel osv.]

}

Når man ikke skriver noget foran "\textwidth" så fortolker LaTeX det som om du har skrevet "1.0 \textwidth"

Svar og citér
Anders Munk-Nielsen

Anders Munk-Nielsen

Antal indlæg: 39
Medlem siden: d. 01. juni 2011
Af Rud Faden @ 27 apr. 2014 11:48

Har du husket et } efter din tabel?

Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Maria Juul Hansen @ 27 apr. 2014 13:18

ERT = Evil Red Text så vidt jeg kan læse mig til til LaTex-kode. Jeg har husket et } efter min tabel.

Toppen ser således ud:

Og bunden således

Jeg har indsat dit forslag, Anders. Pdf-filen kan godt dannes, men tabellen står stadig længere ude i højre side, og der kommer en fejl op: Jeg er ikke helt klar over, hvor det er, der burde have stået et tal



Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Maria Juul Hansen @ 27 apr. 2014 13:24

Jeg har fundet en løsning nu. 

I tilfælde af, at andre støder på samme vanskeligheder, løstes det ved at skrive \begin{adjustwidth*}{-2cm}{-2cm} i start og \end{adjustwidth*} i slutningen af elementet.

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Rud Faden @ 27 apr. 2014 13:26

Der er ihvertfald et backslah for meget efter \noindent. Det bør være 

\noindent\resizebox{\textwidth}{!}{%

Tabel

}
Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Maria Juul Hansen @ 27 apr. 2014 13:52

Rud Faden sagde:

Der er ihvertfald et backslah for meget efter \noindent. Det bør være 

<pre><code>\noindent\resizebox{\textwidth}{!}{%

Tabel

}</code>

Arh, okay :-) Jeg har prøvet at fjerne den, men det vil stadig ikke lade sig gøre med resizebox.

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Rud Faden @ 27 apr. 2014 13:58

Prøv at flyt din caption uden for rezies box 

Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Anders Munk-Nielsen @ 27 apr. 2014 21:42

Jeg er ikke sikker, men det kan også godt være et problem, at du har et "%" til sidst i linjen... det burde det ikke være, men who knows. Prøv at bytte 

\noindent\resizebox{\textwidth}{!}{%
Tabel
}

ud med

\noindent\resizebox{\textwidth}{!}{
Tabel
}

Svar og citér
Anders Munk-Nielsen

Anders Munk-Nielsen

Antal indlæg: 39
Medlem siden: d. 01. juni 2011
Af Maria Juul Hansen @ 28 apr. 2014 20:54

Jeg har forsøgt at fjerne % og sætte det uden for min box, men oplever af en eller anden grund stadig problemer. Jeg har dog fundet en anden løsning, så det er ikke presserende at få dette til at du.

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Patrick Kofod Mogensen @ 29 apr. 2014 13:39

Maria Juul Hansen sagde:

Jeg har fundet en løsning nu. 

I tilfælde af, at andre støder på samme vanskeligheder, løstes det ved at skrive \begin{adjustwidth*}{-2cm}{-2cm} i start og \end{adjustwidth*} i slutningen af elementet.

Bare så folk ved hvad der sker, så ændres margenen ({venstreside}{højreside}={-2cm}{-2cm}) lokalt for det der er mellem \begin ... \end. At der står adjustwidth* og ikke adjustwidth er blot et spørgsmål om ens dokument er tosidet (skiftende smal venstre/højre-margen). Hvis man har et etsidet setup kan man lige så godt bruge adjustwidth uden en stjerne. Alternativt kan man indsætte et negativt horisontalt mellemrum, hvis man altså kan leve med de ulige margener - dette gøres ved \hspace{-2cm}, hvis man ønsker at rykke elementet 2cm til venstre.

Svar og citér
Patrick Kofod Mogensen

Patrick Kofod Mogensen

Antal indlæg: 554
Medlem siden: d. 29. januar 2011
Af Anders Munk-Nielsen @ 29 apr. 2014 14:40

Rud Faden sagde:

Der er ihvertfald et backslah for meget efter \noindent. Det bør være 

<pre><code>\noindent\resizebox{\textwidth}{!}{%

Tabel

}</code>

Jeg bliver nysgerrig, har Rud ikke ret? Nu synes jeg at jeg husker noget om, at der kun må være selve tabellen inde i resizeboxen...

Svar og citér
Anders Munk-Nielsen

Anders Munk-Nielsen

Antal indlæg: 39
Medlem siden: d. 01. juni 2011
Af Rud Faden @ 29 apr. 2014 15:12

Jeg tror jeg har funder problemet. Resizebox kræver at pakken graphicx loades. I Document -> Settings -> LaTeX Preable skriv 

\usepackage{graphicx}	

Derefter

\resizebox{\textwidth}{!}{%

Tabel

}\caption{tabel}
Altså Caption uden for resizebox.

Jeg har lavet et eksempel her: Test af tabel med resizebox i lyx

Svar og citér
Rud Faden

Rud Faden

Antal indlæg: 59
Medlem siden: d. 18. september 2010
Af Maria Juul Hansen @ 29 apr. 2014 19:22

Rud Faden sagde:

Jeg tror jeg har funder problemet. Resizebox kræver at pakken graphicx loades. I Document -> Settings -> LaTeX Preable skriv 

<span style="line-height: 1.45em; white-space: pre; background-color: initial;">\usepackage{graphicx}</span><span style="line-height: 1.45em; white-space: pre; background-color: initial;">	</span>

Derefter

\resizebox{\textwidth}{!}{%

Tabel

}\caption{tabel}
Altså Caption uden for resizebox.

Jeg har lavet et eksempel her: Test af tabel med resizebox i lyx

Af en eller anden grund kan jeg desværre ikke åbne dit eksempel.

Jeg har hele tiden haft graphicx installeret, så det bør ikke være kilden til problemet.

Jeg har nu forsøgt at gøre flg., hvor jeg blot har indsat en helt. alm. tabel lavet i LyX...

...og det virker. 

Når jeg i stedet importerer en tabel fra en CSV-fil til LyX og derefter kopierer den ind i resizebox frem for den tabel, jeg har indsat i ovenstående, så dur det ikke.

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Maria Juul Hansen @ 29 apr. 2014 19:24

Hov, hvis min tabel lavet direkte i LyX bliver tilstrækkeligt stor, så får jeg samme fejlmeddelelse, som hvis jeg indsætter min tabel fra en csv.-fil.

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Patrick Kofod Mogensen @ 29 apr. 2014 20:07

Maria Juul Hansen sagde:

Hov, hvis min tabel lavet direkte i LyX bliver tilstrækkeligt stor, så får jeg samme fejlmeddelelse, som hvis jeg indsætter min tabel fra en csv.-fil.

Bare for at gøre forvirringen total, så prøv med \scalebox{x}{ tabel } (uden caption og label). x er i intervallet 0 til 1 og angiver hvilken andel bredden og højden skal ganges med. Stadig med \usepackage{graphicx}.

Svar og citér
Patrick Kofod Mogensen

Patrick Kofod Mogensen

Antal indlæg: 554
Medlem siden: d. 29. januar 2011
Af Patrick Kofod Mogensen @ 29 apr. 2014 20:07

Maria Juul Hansen sagde:

Hov, hvis min tabel lavet direkte i LyX bliver tilstrækkeligt stor, så får jeg samme fejlmeddelelse, som hvis jeg indsætter min tabel fra en csv.-fil.

Bare for at gøre forvirringen total, så prøv med \scalebox{x}{ tabel } (uden caption og label). x er i intervallet 0 til 1 og angiver hvilken andel bredden og højden skal ganges med. Stadig med \usepackage{graphicx}.

Svar og citér
Patrick Kofod Mogensen

Patrick Kofod Mogensen

Antal indlæg: 554
Medlem siden: d. 29. januar 2011
Af Maria Juul Hansen @ 30 apr. 2014 00:49

Patrick Kofod Mogensen sagde:

Bare for at gøre forvirringen total, så prøv med \scalebox{x}{ tabel } (uden caption og label). x er i intervallet 0 til 1 og angiver hvilken andel bredden og højden skal ganges med. Stadig med \usepackage{graphicx}.

Tak for det forslag, men det virker desværre ikke efter hensigten. Jeg får stadig en tabel, der ikke placeres midt på siden, men derimod er rykket mod højre. Venstre margin er således bevaret i den bredde, som jeg har indstillet dokumentet til, mens højre margin bliver væsentligt mindre. Desuden kommer der en fejl, når jeg forsøger på den tabel, jeg importerer fra csv. 

Svar og citér
Maria Juul Hansen

Maria Juul Hansen

Antal indlæg: 35
Medlem siden: d. 01. marts 2011
Af Anders Munk-Nielsen @ 30 apr. 2014 10:11

Maria Juul Hansen sagde:

Tak for det forslag, men det virker desværre ikke efter hensigten. Jeg får stadig en tabel, der ikke placeres midt på siden, men derimod er rykket mod højre. Venstre margin er således bevaret i den bredde, som jeg har indstillet dokumentet til, mens højre margin bliver væsentligt mindre. Desuden kommer der en fejl, når jeg forsøger på den tabel, jeg importerer fra csv. 

Now it's on like donkey kong - hvis du kan lægge en fil og en tabel op så tror jeg vi kan klare problemet noget nemmere... hvis du ikke vil vise det faktiske indhold i din tabel, så overskriv indholdet i tabellen... 

Svar og citér
Anders Munk-Nielsen

Anders Munk-Nielsen

Antal indlæg: 39
Medlem siden: d. 01. juni 2011