web-dev-qa-db-fra.com

Utiliser Stargazer avec RStudio et Knitr

Je me débats pour utiliser Stargazer Sortie dans Knitr, en utilisant RStudio. Par exemple, je colle le code ci-dessous dans un fichier .RMD, puis cliquez sur HTML tricoté. Le premier bloc entre [et] est rendu comme des équations. Le deuxième bloc est de Stargazer. Il reste comme code. Lorsque je colle le deuxième bloc, moins [et] dans un fichier Sweave, puis cliquez sur Compiler comme PDF, le code rend comme une table. J'ai installé Miktex et la version 3 de Stargazer.

La réponse Insertion de la table Stargazer ou Xable dans Document Knitr fonctionne pour moi dans un fichier Swee (RNW) lorsque vous cliquez sur Compiler PDF. Dans un fichier RMD, le Tex n'est pas rendu lorsque vous cliquez sur HTML tricoté.

Comment puis-je mettre la sortie Stargazer dans un fichier RMD afin que HTML tricot convertit le code latex sur une table? (Je suis nouveau au latex et je ne suis pas sûr de ce que je peux supprimer, alors excusez-vous pour le long segment.)

\[
\begin{aligned}
\dot{x} & = \sigma(y-x) \\
\dot{y} & = \rho x - y - xz \\
\dot{z} & = -\beta z + xy
\end{aligned}
\]

\[
\documentclass{article}

\begin{document}


% Table created by StarGazer v.3.0.1 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu
% Date and time: Sun, Feb 03, 2013 - 11:34:52 AM
\begin{table}[htb] \centering 
  \caption{} 
  \label{} 
\footnotesize 

\begin{tabular}{@{\extracolsep{5pt}}lc} 
\\[-1.8ex]\hline 
\hline \\[-1.8ex] 
 & \multicolumn{1}{c}{\textit{Dependent variable:}} \\ 
\cline{2-2} 
\\[-1.8ex] & Rate \\ 
\hline \\[-1.8ex] 
 pole & $0.071^{***}$ \\ 
  & $(0.020)$ \\ 
  & \\ 
 post & $0.095^{***}$ \\ 
  & $(0.019)$ \\ 
  & \\ 
 Constant & $-5.784^{***}$ \\ 
  & $(1.667)$ \\ 
  & \\ 
\hline \\[-1.8ex] 
Observations & $46$ \\ 
Residual Std. Error & $2.378 (df = 43)$ \\ 
\hline 
\hline \\[-1.8ex] 
\textit{Note:}  & \multicolumn{1}{r}{$^{*}$p$<$0.1; $^{**}$p$<$0.05; $^{***}$p$<$0.01} \\ 
\normalsize 
\end{tabular} 
\end{table} 

\end{document}
\]
15
Isaiah

Depuis que le sujet est devenu un peu rassis, je suppose que le problème à la main est de utilisez en quelque sorte Stargazer avec Knitr , et non la conversion de la conversion de Les objets Stargazer en HTML.

Être fan de Stargazer, j'ai proposé le flux de travail suivant:

  1. Ecrivez mon code dans un fichier .RMD.
  2. Tricoter dans .md. Les tables Stargazer restent comme un code en latex dans le fichier de marquage résultant.
  3. Utilisez Pandoc pour convertir le fichier de point de repère en PDF. Pandoc traduit le code de latex dans des tables appropriées. Alternativement, on peut utiliser LYX avec plug-in Knitr pour obtenir des tables Stargazer de manière joliment sortie dans le format PDF.

Si on veut des tables de Stargazer dans MS Word, la meilleure façon que j'ai trouvée est d'utiliser latex2rtf . Bien que les cellules très supérieures soient déformées un peu, la fixation est une question d'élimination d'une cellule vide erronée. Pour le reste, la table est préservée et peut être collé/importée en mot.

Ces deux stratégies aident à utiliser Stargazer en dehors du latex. J'espère que ça aide.

11
Maxim.K

Utilisez le code suivant et obtenez une version de travail

```{r, results='asis'}
stargazer(model)
```

Lors de la conversion en PDF, le code suivant fonctionne parfaitement pour Stargazer 4.0:

```{r, results='asis'}
stargazer(model, header=FALSE, type='latex')
```
27
Junchen

Retour à cette question.

Je veux utiliser le identique Fichiers de point de repère pour produire des sorties HTML et PDF dans RStudio avec Knitr. C'est-à-dire, dans RStudio, je veux appuyer sur le bouton de tricot et que vous avez les options de la sortie HTML, ou d'une sortie PDF. Je n'ai plus d'intérêt, pour le moment, en trichant un document Word/OpenOffice.

J'ai utilisé l'incroyablement utile feuille de trichet Stargazer de Jake Russ. Cela exerce la plupart des fonctions de Stargazer. C'est un fichier de marquage R, avec les résultats des options de chunk = "ASIS" pour ces morceaux produisant une sortie Stargazer.

La commande Stargazer elle-même a un argument 'Type'. La valeur par défaut est TYPE = 'Latex' dans la feuille de trichets de Jake Russ, destinée à produire une page Web, Type = 'HTML' est utilisé partout.

Cela ne fonctionne pas du tout si vous essayez de la tricoter dans un PDF. Les tables sortent de longues listes, une cellule de table par ligne, sans formatage et occupant de nombreuses pages, sans formatage.

Le plus petit changement que je puisse faire pour me permettre de produire de belles PDF dans RStudio est de remplacer globalement tous les

type='html'

avec

type='latex'

(Notez que les deux se produisent dans le texte du document, ainsi que dans les commandes Stargazer, des soins sont donc nécessaires!)

Cela marche! Autant que je puisse voir que le PDF est une réplique fidèle de la page Web, ce qui est exactement ce que je veux.

Essayer de tricoter des documents OpenOffice, si je pars

type='latex'

Chaque table dans la sortie est remplacée par ce texte: -

% Table created by stargazer v.5.2 by Marek Hlavac, Harvard University. E-mail: hlavac at fas.harvard.edu % Date and time: Tue, Sep 01, 2015 - 22:22:29

Si je restaure le

type='html'

ensuite, chaque table est écrite, une cellule par ligne, sur le côté de la page sans formatage!

5
astaines

En plus de la réponse précédente, et peut-être comme une solution plus simple, il est possible pour Stargazer de sortir la table dans le code HTML afin que lorsque le fichier RMD soit tricoté dans HTML, une table est créée plutôt que le code Tex. Je crois que la fonction stargazer peut désormais exporter directement vers HTML en définissant type = 'html'.

Donc, par exemple, étant donné modèle ajustement lm1, Vous utiliseriez le code suivant dans votre fichier RMD:

stargazer(lm1, type = 'html')

Cela fonctionne si vous souhaitez que votre sortie finale soit HTML ou PDF.

4
carnust