R vs SQL

R logo

R logo

Iniciando

Quando comecei a utilizar o R o maior problema foi a adaptação devido ao fato de já utilizar SQL com bancos relacionais, imediatamente surgiam as dúvidas:

  1. Como faço um “where” ?
  2. Tem como fazer um “like” ?
  3. Como faço um “group by”
  4. Como faço para ordenar?
  5. Como faço um “limit”

R vs SQL ?

Quase todos os recursos disponíveis do R para análise de dados estão disponíveis na maioria dos bancos de dados relacionais, então porque utilizar o R ?

  1. O R foi criado para análise e não para persistência, controle de transações, rede e outros. Desta forma o R responde com muito mais velocidade considerando o mesmo hardware utilizado no banco relacional.
  2. Possui uma infinidade de bibliotecas disponíveis gratuitamente em seu repositório.
  3. Existem um infinidade de gráficos disponíveis nativamente como pode ser visto na figura 1 e todos os outros que se possa imaginar disponíveis como bibliotecas em seu repositório central.
  4. O R foi criado para análise estatísticas, sendo assim, se você pretende fazer este tipo de análise, não há o que discutir.

Gráfico 3d no R

Fig. 1

Comparando de forma prática:

Vamos utilizar alguns exemplos simples para nos familiarizarmos com a forma de consulta do R.

Para nossos exemplos vamos utilizar o seguinte dataset:

Filtrando

 É possível criar desde filtros simples como “where Ozone = 41” ate filtros mais complexos utilizando expressão regular.

 Abaixo alguns exemplos práticos:

Recurso SQL R
Where … where month = 5 airquality[airquality$Month == 5,]
Like … where Ozone like ‘4%’ airquality[grep(‘4.’, airquality$Ozone),]
Group by select count(*) from airquelity

group by Month

aggregate(airquality, by=list(airquality$Month), FUN=length)
Ordenamento select * from airquelity

order by Ozone

airquality[order(airquality$Ozone),]
Limit select * from airquelity

limit 10

head(airquality, 10)

E os JOINS ?

Quando trabalhamos com analise no R de forma interativa o ideal é que você providencie um dataframe reconfigurado e que contenha todas as dimensões/tabelas necessárias, mas ainda assim há situações onde se faz necessário mesclar dataframes, sendo um script de carga ou ate mesmo no modo interativo, pra isto podemos utilizar o comando merge.

Comando utilizados neste post:

  • library Carrega uma biblioteca informada como parâmetro
  • head     Exibe apenas os primeiros registros de um DataFrame
  • grep      Filtra registros de um DataFrame com base em expressão regular
  • aggregate Agrupa registros considerando um campo agregador e uma função aplicada a coluna de “valor”
  • order    Ordena os registros informados

Site oficial: R

Related Post

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *