2016-05-16 1 views
0

Ich bin ein Latex Newbee. Ich habe MikTeX 2.9, GhostScript, GSView, TeXnicCenter korrekt installiert und die Einstellungen korrekt vorgenommen.LaTeX-Fehler beim Erstellen der PDF-Version. Dies zeigt typischerweise Rd-Probleme an. LaTeX Fehler gefunden:! Nicht definierte Steuersequenz

Mein Paket (mit dem Namen "mypackage") übergeben Paketprüfung
über
Von R-Konsole: devtools::check("C:/Users/User/Documents/Revolution/mypackage")
Von DOS-Eingabeaufforderung: R CMD check mypackage
ohne Probleme, und ich erhielt mypackage.PDF Dateien automatisch schließlich.

habe ich beschlossen, mathematische Ausdrücke zu erzeugen, zum Beispiel

enter image description here

in der resultierenden PDF-Datei. Also, habe ich den folgenden Latex-Ausdrücke in der Zeile in .R-Datei:

#' @param max selected ...The default is Schwert's approximation: \eqn{\lfloor 12(length(t) \over 100)^{\sfrac{1}{4}} \rfloor} 

I roxygenized und löste die oben genannten Paket-Kontrollen noch einmal. Diesmal in der Paketprüfung, erhalte ich die folgende Fehlermeldung (in Eingabeaufforderung):

* checking PDF version of manual ...Warning: running command '"C:/Revolution/R-Enterprise-7.3/R-3.1.1/bin/x64/Rcmd.exe" Rd2pdf --batch --no-preview --build-dir 
="C:/Users/User/AppData/Local/Temp/RtmpysnRGn/Rd2pdf1b3050f426ea" --no-clean -o mypackage-manual.pdf 

"C:/Users/User/Documents/Revolution/mypackage.Rcheck/mypackage"' had status 1 
WARNING LaTeX errors when creating PDF version. This typically indicates Rd problems. LaTeX errors found: ! Undefined control sequence. 
<argument> ...oor 12(length(t) \over 100)^{\sfrac 
    {1}{4}} \rfloor 
l.67 ...th(t) \over 100)^{\sfrac{1}{4}} \rfloor}{} 

checking PDF version of manual without hyperrefs or index ...Warning: running command '"C:/Revolution/R-Enterprise-7.3/R-3.1.1/bin/x64/Rcmd.exe" Rd2pdf --bat 
ch --no-preview --build-dir="C:/Users/User/AppData/Local/Temp/RtmpysnRGn/Rd2pdf1b3069b07b94" --no-clean --no-index -o mypackage-manual.pdf 

C:/Users/User/Documents/Revolution/mypackage.Rcheck/mypackage' had status 1 ERROR 

Was ich getan habe: Ich habe die ähnlichen Fehler in SOF analysiert, kann aber nicht herausfinden, was schief laufe. Ich bin mir nicht sicher, woher der Fehler aufgetreten ist: meine Latex-Syntax oder etwas in R.

Ich würde jede Hilfe sehr schätzen.

bearbeiten (Complete Präambel auf Werner Bemerkung, nach der folgenden Lösung auferlegt wird):

#' adfcs 
#' 
#' Augmented Dickey-Fuller test that uses common (sub-)sample for all of the lags when a selected max order is given to find optimal minimal lag order of the autoregressive process. 
#' 
#' Augmented Dickey-Fuller test (for unit root testing) that uses common (sub-)sample for all of the lags when a selected max order is given to find optimal minimal lag order of the autoregressive process. 
#' The test is based on J.G. McKinnons' numerical distribution functions. 
#' MacKinnon, J.G. (1996); Numerical distribution functions for unit root and cointegration tests, J of Applied Econometrics 11, p. 601 618. 
#' The default value of max is Schwert's approximation (Schwert, G.W. (1989). Tests for Unit-Roots: A Monte Carlo investigation. Journal of Business and Economic Statistics 7, 147-159.) 
#' Usage: adfcs(t, max = floor(12*(length(t)/100)^(1/4)), type = c("c")). I thank Fabian Scheipl, Dept. of Statistics, LMU Munich for his helpful suggestions during the construction of adfcs. 
#' When data frame is supplied for the parameter t, specify the column of the variable for which the ADF test is wanted . 
#' 
#' @param t a numeric vector or time series object whose stationarity is examined 
#' @param max selected max lag order to find optimal minimal lag order for the autoregressive process in ADF test. The default is Schwert's approximation: \eqn{\left\|12\left(\frac{length(t)}{100}\right)^{1/4}\right\|} 
#' @param type a character string describing the type of the unit root regression. Valid choices are "nc" for a regression with no intercept (constant) nor time trend, and "c" for a regression with an intercept (constant) but no time trend, "ct" for a regression with an intercept (constant) and a time trend. The default is "c". 
#' @return Augmented Dickey-Fuller test that uses common sample for all of the lags. 
#' @author Erdogan Cevher [email protected]@gmail.com 
#' @seealso \code{\link{VARomlop}} 
#' @examples 
#' ## ADF test for the 1st variable in granger.df, max length is that of Schwert's approximation (default). 
#' # adfcs(granger.df[,1]) 
#' ## ADF test for the 3rd variable in granger.df, max length is 10. 
#' # adfcs(granger.df[,3], 10) 
#' @importFrom fUnitRoots unitrootTest 
#' @export 
adfcs <- function(... 
+2

Sie wahrscheinlich soll das [ 'xfrac' Paket] enthalten (http://ctan.org/pkg/xfrac) in Ihrem Präambel, um '\ sfrac' zu verwenden. Ich würde jedoch vorschlagen, nur '1/4' zu verwenden. – Werner

+0

@Werner Um Paket zur Präambel hinzuzufügen, nahm ich einen Hinweis von [link] (https://github.com/yihui/knitr/issues/1184). Ich fügte # # header-includes: # '- \ usepackage {xfrac} 'zur .R-Datei hinzu, um das xfrac-Paket zur Verwendung von \ sfrac einzuschließen. Ich habe 'R CMD check mypackage' ausgelöst. Ein Fehler ist aufgetreten: '* Überprüfen, ob das Paket 'MeinPaket' installiert werden kann ... WARNUNG Die folgenden signifikanten Warnungen wurden gefunden: Warnung: C: /Users/User/Documents/Revolution/mypackage/man/adfcs.Rd: 31: unbekannt Makro '\ Usepackage''. Es scheint, dass ich nicht erreichen kann, wie man ein TeX-Paket in die Präambel von R einfügt. –

+0

Sie verwenden also * Rmarkdown * und kompilieren nach PDF? Sie sollten der Community wirklich ein vollständiges Beispiel Ihres Codes und nicht nur fragmentierte Snippets bereitstellen. – Werner

Antwort

0

1. Ich fand einen kostenlosen Online/Echtzeit/WYSIWYG-Latex-Wandler: https://www.codecogs.com/latex/eqneditor.php

In dieser Website; durch Versuch und Irrtum, entdeckte ich die Latex-Syntax für Schwertz Formel:

\left\|12\left(\frac{length(t)}{100}\right)^{1/4}\right\| 

(Ich schlage vor, Trennung Latex-Tags voneinander über Räume (wenn die oben math'l Symbole) klicken zu entdecken/lernen, die Latex-Tags' Jobs weiter.) Das Löschen aller Leerzeichen zwischen Tags hatte keinen Einfluss auf den resultierenden mathematischen Ausdruck.

2. Dann ersetzte ich die codecogs des obigen Latex-Code innerhalb \eqn{...} tag:

#' @param max selected ...The default is Schwert's approximation: \eqn{\left\|12\left(\frac{length(t)}{100}\right)^{1/4}\right\|} 

ich nichts auf die Präambel in der .R-Datei hinzugefügt haben.

3. Dann habe ich R CMD check mypackage von DOS-Eingabeaufforderung erneut ausgelöst.

Dieses Mal wurde das Paket ohne Probleme überprüft. Ich habe eine .PDF-Datei erhalten, in der der Inhalt von .jpg entsprechend angezeigt wird.

(Wenn ich Werner-Lösung durchführen kann, ich es auch hier setzen würde)

+0

Dies ist im Grunde Werners Vorschlag aus dem Kommentar zu Ihrer Frage: Verwenden Sie '1/4' statt' \ sfrac {1} {4} '. – Gregor

Verwandte Themen