library(reticulate) # Carrega pacote para integração R-Python
virtualenv_create("env_me315") # Cria ambiente virtual Python isolado para o projeto
virtualenv: env_me315
Utilize o conjunto de dados flights.csv.zip
disponível em https://www.kaggle.com/usdot/flight-delays e carregue os dados utilizando as funções:
read.csv()
do pacote base
do Rread_csv()
do pacote readr
do Rread_csv()
do pandas
no PythonQual dessas três formas de carregar os dados é mais rápida? (calcule o tempo exato que demorou cada método em carregar os dados no seu computador)
flights.csv
, zipar ele (e salvar como flights.csv.zip
).Criar um ambiente virtual ‘env_me315’ e usar ele quando for utilizar Python.
library(reticulate) # Carrega pacote para integração R-Python
virtualenv_create("env_me315") # Cria ambiente virtual Python isolado para o projeto
virtualenv: env_me315
use_virtualenv("env_me315") # Define o ambiente virtual a ser usado
py_install("pandas", envname = "env_me315") # Instala pandas no ambiente virtual
Using virtual environment "env_me315" ...
+ "C:/Users/ZANA/OneDrive/Documentos/.virtualenvs/env_me315/Scripts/python.exe" -m pip install --upgrade --no-user pandas
# Método 1: base R
<- Sys.time()
inicio_base_r <- read.csv(unz('flights.csv.zip', "flights.csv"))
dados <- Sys.time()
final_base_r <- final_base_r - inicio_base_r
tempo_base_r tempo_base_r
Time difference of 1.649574 mins
# Método 2: readr (R)
library(readr)
Warning: package 'readr' was built under R version 4.2.3
<- Sys.time()
inicio_readr <- read_csv('flights.csv.zip') dados
Rows: 5819079 Columns: 31
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr (11): AIRLINE, TAIL_NUMBER, ORIGIN_AIRPORT, DESTINATION_AIRPORT, SCHEDUL...
dbl (20): YEAR, MONTH, DAY, DAY_OF_WEEK, FLIGHT_NUMBER, DEPARTURE_DELAY, TAX...
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
<- Sys.time()
final_readr <- final_readr - inicio_readr
tempo_readr tempo_readr
Time difference of 16.12313 secs
# Método 3: pandas (Python)
import time
import pandas as pd
= time.time()
inicio_python = pd.read_csv("flights.csv.zip", compression="zip", header=0, sep=",", low_memory=False)
dados = time.time()
final_python = final_python - inicio_python
tempo_python print(tempo_python)
19.373294353485107