Exportando data frames do R para planilhas

Imagine-se na seguinte situação: o seu chefe lhe pede uma análise de um conjunto de dados "sujos", que requerem um enorme trabalho de limpeza, além de que se faça cálculos complexos. Você, inteligente e inovador, pretende realizar todo o trabalho com o R, já que a linguagem permite que você faça o trabalho rapidamente. Há um porém, o seu chefe ainda não conhece muito bem a linguagem, e também necessita passar as informações para outros setores da empresa, e por isso, pede que o conjunto de dados seja entregue em uma planilha. Neste texto, iremos mostrar como é possível resolver esse problema, exportando data frames para planilhas utilizando os pacote {XLConnect} e {googlesheets4}.

# Carrega os pacotes necessários
library(googlesheets4)
library(XLConnect)
library(tidyverse)

Primeiro, iremos mostrar como exportar uma data frame para um arquivo .xlsx. O primeiro passo é carregar o arquivo
de formato .xlsx, para que seja feita a conexão com o R. Veja que é possível conectar a uma planilha já existente, utilizando a função loadWorkbook(), passando nome do arquivo em questão no primeiro argumento, bem como criar um arquivo direto do R, passando o argumento create = TRUE. Fazemos isso tudo salvando em um objeto.

Logo em seguida, realizamos a criação de páginas dentro da planilha, no qual iremos colocar nossos dados. Podemos fazer isso com a função createSheet(), em que passamos o objeto que conecta com o arquivo .xlsx, e o nome da página. Após isso, utilizamos a função writeWorksheet() para enfim escrever os dados na planilha. Veja que podemos escolher as coordenadas em que os dados estarão guardados usando os argumentos startRow e startCol, que por padrão começam na linha 1, coluna 1.

Por fim, salvamos o arquivo utilizando a função saveWorkbook().


# Cria um arquivo .xlsx
flowers <- loadWorkbook("iris.xlsx", create = TRUE)

# Cria uma página no arquivo
createSheet(flowers, "iris1")

# Escreve na página criada
writeWorksheet(flowers, iris, sheet = "iris1", startRow = 1, startCol = 1)

# Salva o arquivo
saveWorkbook(flowers)

Outro pacote muito útil para transformar data frames em planilhas é o {googlesheets4], que justamente conecta os dados em uma planilha no Google Planilhas.

Para isso, é necessário que o pacote tenha permissão da sua conta Google para realizar as mudanças. Para isso, utiliza-se a função gs4_auth(), colocando seu e-mail de uso.

Em seguida, cria-se a planilha utilizando a função gs4_create(), passando o nome da planilha como primeiro argumento, e o data frame que podem ser utilizados.

Em caso de alterações, podemos escrever por cima da planilha utilizando a função write_sheet(). O argumento ss é usado para conectar a planilha, podemos usar tanto a url, quanto o id salvo dentro do argumento iris_gg.

## Google Sheets

# Conecta a conta do Google, para garantir a permissão
gs4_auth(email = "luiz@exemplo.com")

# Cria uma planilha dentro do Google Planilhas
iris_gg <- gs4_create("flowers", sheets = iris)

# Escreve por cima do arquivo criado anteriormente
write_sheet(data = filter(iris, Species == "setosa"),
            ss = "1V2722XxqQHbi_9V_bi5LAxwEHrQTXHCW4OnpyjjxiQg",
            sheet = "iris")

Serve como um bom quebra-galho, não?

________________________
(*) Para entender mais sobre a linguagem R e suas ferramentas, confira nosso Curso de Introdução ao R para análise de dados.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Análise do Censo Demográfico com o R

Como podemos analisar dados do Censo Demográfico para produzir pesquisas e implementar políticas públicas? Mostramos nesta postagem o resultado de uma breve análise dos dados preliminares do Censo Demográfico de 2022 usando o R.

Deploy de modelos com Python + Shinylive + GitHub gastando ZERO reais

Colocar modelos em produção pode ser um grande desafio. Lidar com custos monetários, infraestrutura operacional e complexidades de códigos e ferramentas pode acabar matando potenciais projetos. Uma solução que elimina todos estes obstáculos é a recém lançada Shinylive. Neste artigo mostramos um exemplo com um modelo de previsão para o preço do petróleo Brent.

Como automatizar tarefas repetitivas usando Python? Um exemplo para largar o Excel

Manter relatórios diários com dados e análises atualizados é um desafio, pois envolve várias etapas: coleta de dados, tratamento de informações, produção de análises e atualização de relatório. Para superar este desafio algumas ferramentas como Python + Quarto + GitHub podem ser usadas para automatizar tudo que for automatizável. Neste artigo mostramos um exemplo com dados do mercado financeiro.

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.