Dicas de R: usando Python dentro do R

No Dicas de R de hoje, vamos mostrar como você pode rodar código em Python dentro do próprio R, facilitando a integração para pessoas que estão começando no R e já têm conhecimento de Python, ou que querem embutir em seu código o ferramental de Python, que muitas vezes pode agilizá-lo e resolver problemas. Essa integração pode ser feita através do pacote reticulate, como mostraremos a seguir. Vamos supor aqui que você já tem tanto o R como o Python instalados, e também já possui todos os pacotes de Python e de R que quer usar. Para carregar o Python no R, basta rodar:


library(reticulate)

O R irá carregar a sua versão padrão de Python. Se quiser utilizar outra (como ao começar um projeto), basta adicionar o código

use_python("/usr/local/bin/python")

Substituindo o argumento pelo caminho até a versão utilizada. Feito isso, vamos carregar o pandas como exemplo:

 
pd = import('pandas')

Após carregar a library, ela se torna um objeto no R como qualquer outro. Suas funções podem ser acessadas com o operador $, como se fossem colunas. Com isso, o código fica semelhante a um código de Python, usando pd$read_csv ao invés de pd.read_csv, por exemplo.

Para rodar códigos básicos de Python, existem as funções py_run_string(), que recebe strings de código como argumento, e py_run_file(), que recebe um script completo.

Como os objetos de uma linguagem não podem ser operados diretamente por outra, o reticulate transforma objetos de R em objetos de Python sempre que você chama uma função do Python sobre um objeto de seu environment base, e os transforma de volta após finalizar a função. Caso queira trabalhar com objetos de Python ao longo de várias funções, também é possível importar um módulo do Python e impedir que a transformação automática seja feita após suas funções:

 
pd = import('pandas', convert = FALSE)

Com isso, os objetos trabalhados serão de Python, e depois disso para transformá-los em objetos de R basta rodar py_to_r(nome_do_objeto).

O pacote apresentado aqui permite integração total entre o Python e o R, facilitando o uso de ferramentas estatísticas integradas no R para usuários de Python. Para mais informações sobre ele, recomendamos sua página principal, disponível aqui.


Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Previsões do Boletim Focus em Anos Eleitorais

Eleições são momentos de incerteza, mas os dados do Boletim Focus mostram que nem toda incerteza é igual. Ao analisar as previsões de inflação, juros e câmbio nos anos que antecederam as eleições de 2014, 2018 e 2022, este post investiga como o mercado revisa cenários macroeconômicos ao longo do tempo.

Como Medir o Ciclo das Concessões de Crédito usando Python

Este exercício apresenta uma análise quantitativa da relação entre o ciclo de concessões de crédito, a atividade econômica e a política monetária no Brasil. Utilizando a linguagem Python, o estudo aplica técnicas de decomposição de séries temporais (X13-ARIMA e Filtro HP) para isolar os componentes cíclicos dos dados. Os resultados da modelagem econométrica confirmam a pró ciclicidade do crédito em relação ao hiato do produto e sua sensibilidade às variações no hiato da taxa de juros real.

Choque de juros e renda em bens duráveis e não duráveis usando Python

Este artigo analisa a dinâmica do consumo no Brasil utilizando Python e modelos de Vetores Autorregressivos (VAR). Ao segregar bens duráveis e não duráveis, o estudo quantifica a sensibilidade a choques de juros e renda. Criamos todo o processo através do ciclo de dados: coleta, tratamento, análise de dados, modelagem e apresentação dos resultados, tudo automatizado usando a linguagem Python.

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.