Вмъкнете R уравнение като `z‹-x^2/y^2` в Markdown в чиста форма

Имам уравнение като «z=x^2/y^2», написано в r като: z<-'x^2/y^2' , z<-function(x,y) x^2/y^2 или z<-quote( x^2/y^2). Искам да го преведа в чиста форма (като LaTeX), така че да мога да го вмъкна в R Markdown. Искам да го изплета във формат .doc или .odt. Нито едно от решенията, които намерих, не ме удовлетвори. Така че опитах това:

>latexTranslate("x^2/y^2")#  It doesn`t expand fractions.
>xtable(z)
Error in UseMethod("xtable") : 
  no applicable method for 'xtable' applied to an object of class "character"
>z<-matrix(z)
>xtable(z)

Имам:

\begin{table}[ht]
\centering
\begin{tabular}{rl}
  \hline
 & x \\ 
  \hline
1 & x\verb|^|2/y\verb|^|2 \\ 
   \hline
\end{tabular}
\end{table}

Опитах се да го поставя в markdown с my_equation $that_previous_equation$ ,$$that_previous_equation$$ без правилен резултат.

>z<-'x^2/y^2'
>toLatex(z)

Error in UseMethod("toLatex") : 
  no applicable method for 'toLatex' applied to an object of class "character"

След това опитах същото, след като преобразувах уравнението в клас «call»

Error in UseMethod("toLatex") : 
  no applicable method for 'toLatex' applied to an object of class "name"

Също така се опитах да започна същото с class(z)=expression.

отколкото

> Hmisc::latex(z,file="")
i got:
%latex.default(z, file = "")%
\begin{table}[!tbp]
\begin{center}
\begin{tabular}{l}
\hline\hline
\multicolumn{1}{c}{}\tabularnewline
\hline
x^2/y^2\tabularnewline
\hline
\end{tabular}\end{center}

\end{table}

Опитах се да го поставя в Markdown без резултат. Markdown ми даде празен .doc, ако го вмъкна, или $$ $$, ако го вмъкна като уравнение. Пакетите 'knitr' и 'markdown' бяха включени.
След това сравних това уравнение на LaTeX с това, което получих от онлайн конвертора. Изглеждаше уморено различно: $\frac{x^{2}}{y^{2}}$. Успях да го изплета.
Как да генерирам от R нещо, което Markdown разбира?


person Alex Alex    schedule 29.07.2015    source източник
comment
Значи искате x^2/y^2 да бъде преведено на \frac{x^2}{y^2}? Това ме обърква, тъй като x^2/y^2 е напълно валиден синтаксис на LaTeX. Как функцията за превод трябва да знае кое искате? Има ли причина да не можете сами да напишете формулите на LaTeX?   -  person Roland    schedule 29.07.2015
comment
Роланд. Искам да го направя автоматично. Искам да използвам този процес в шаблон. Този шаблон ще анализира някои данни и формули и ще ми даде резултата в чист .doc формат.   -  person Alex Alex    schedule 29.07.2015
comment
asciimath изглежда разбира тази фракция, но не знам за конвертор към латекс   -  person baptiste    schedule 29.07.2015


Отговори (1)


Сам намерих решение:

library(Ryacas)
z<-"x^2/y^2"
Sym(z)
TeXForm(z)

Това дава "$\frac{x ^{2}}{y ^{2}} $". Работи.

person Alex Alex    schedule 29.07.2015
comment
Само малка грешка, но ми отне няколко минути, за да разбера: Това е TeXForm (с главна буква X). - person CL.; 29.07.2015