equatiomatic: transformando modelos em equações LaTeX

Quem trabalha com modelagem costuma ter que escrever equações de forma bastante rotineira. Para exercícios simples, é bastante tranquilo escrever uma ou outra equação em \LaTeX. O problema é quando você tem muitas equações no mesmo documento. Nessa Dicas de R - disponível toda quarta-feira aqui no blog da AM -vamos divulgar um novo pacote, o equatiomatic, que trata justamente desse problema.

library(equatiomatic)
library(palmerpenguins)
library(ggplot2)
library(latex2exp)

Usei a própria documentação do pacote para exemplificar o seu uso. Primeiro, rodamos um lm qualquer como o abaixo.


m <- lm(bill_length_mm ~ bill_depth_mm + flipper_length_mm, penguins)

Agora, basta usar a função extract_eq para que tenhamos acesso à equação.


extract_eq(m)

(1)   \begin{equation*} \operatorname{body\_mass\_g} = \alpha + \beta_{1}(\operatorname{bill\_length\_mm}) + \epsilon \end{equation*}

A equação extract_eq contém, inclusive, alguns argumentos que permitem a customização da equação a ser exibida. Para além disso, outra coisa legal do pacote é poder plotar gráficos com equações, como abaixo.


# Fit an lm model
m <- lm(body_mass_g ~ bill_length_mm, penguins)
# extract equation with `ital_vars = TRUE` to avoid the use of `\operatorname`
m_eq <- extract_eq(m, use_coef = TRUE, ital_vars = TRUE)
# swap escaped underscores for dashes
prep_eq <- gsub("\\\\_", "-", m_eq)
# swap display-style 
prep_eq <- paste("$", as.character(prep_eq), "$", sep = "")
# Plot
ggplot(penguins, aes(x = bill_length_mm, y = body_mass_g)) +
geom_point() +
geom_smooth(method = "lm") +
labs(title = "Relation between bill length and body mass",
subtitle = TeX(prep_eq))

____________

Um pdf e um script com todo o código desse exercício está disponível para os membros do Clube AM.

 

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Shiny + Agentes de IA: como criar aplicativos web inteligentes

A combinação de interfaces de usuário interativas com o poder dos grandes modelos de linguagem (LLMs) está abrindo um universo de possibilidades. Imagine criar um aplicativo web que não apenas exibe dados, mas também conversa com o usuário, respondendo a perguntas complexas com base em uma base de conhecimento específica. Usando Shiny para Python e ferramentas de IA como as do Google, isso é mais acessível do que nunca.

Criando um Assistente de Pesquisa com LangGraph

O exercício utiliza o LangGraph para criar personas fictícias de analistas econômicos, entrevistá-las com um especialista fictício e, a partir dessas interações, gerar relatórios técnicos usando LLMs, buscas na web e execução paralela.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.