Fonte: Aquarela
Olá pessoal,
A comparação entre as plataformas R e Python começou há um tempo quando resolvi experimentar um sistema para edição e processamento de scripts chamado Jupyter Notebook, o qual é desenvolvido em Python. Até então sempre usei R. Aparentemente seria um processo tranquilo instalar um aplicativo, aí que a cobra pegou-me pela perna. Como resultado, escrevi o seguinte comentário no Linkedin:
Para quem quer sair do limitado Excel para uma linguagem estatística e de negócios intuitiva, o caminho é o R (a minha visão até o momento). Fiz testes com o seu concorrente (Python) e fiquei bastante frustrado com a quantidade de parametrizações, centenas de pacotes interdependentes misturados, mal documentados e com diversas versões incompatíveis entre si. Dizem que a linguagem Python é super fácil e intuitiva, mas até ter a plataforma pronta para trabalhar, o analista de dados já perdeu a orientação de negócios e se tornou um técnico em infraestrutura de rede e sistemas operacionais. Aí o boi já foi com a corda…
Resultado, não imaginaria o quão frutífera seria a discussão e por isso segue as reflexões neste post. Antes de falar propriamente do R ou Python, vou apontar algumas das limitações mais críticas do Excel do ponto de vista de gestor e analista de dados.
Limitações do Excel em Análise Avançada de Dados
Primeiramente o Excel é uma ferramenta de análise tão poderosa e abrangente que concorre com praticamente tudo, desde o rascunho feito em papel de saco de pão até os sistemas mais avançados de gestão. Se você já desenvolveu software, já ouviu algo do tipo:
- Mas isso eu não posso fazer em Excel?
- Mas depois ele exporta pra Excel, né?
Além disso, algumas funcionalidades do Excel são matadoras. Por exemplo, quando ensinamos alguns alunos a função “Planilha Dinâmica” com 3 cliques, elas entram em estado de euforia plena (recomendo muito investigar isso, em inglês Pivot Table). Funcionalidade com garantia de muitas horas de trabalho economizadas. De fato, o Excel é uma ferramenta poderosíssima de análise e assim como a sua antecessora, a calculadora, ela é assetorizada (palavra nem existe em português, pois são poucas as ferramentas que podem rodar em qualquer área).
Como uma solução de uso geral o Excel apresenta as seguintes limitações em Advanced Analytics:
- Automação da higienização e tratamento de dados em grande escala para processamentos de algoritmos de mineração de dados.
- Incompatibilidade com formatos de arquivos, geralmente devem ser transformados para .XLSX ou é necessário fazer algumas manobras por dentro dele para acertar a formação de “.CSV” por exemplo.
- Os arquivos no seu formato “.XLSX” têm um limite de até 1.048.576 linhas e 16.384 colunas. A versão anterior “.XLS”, apenas 65.536 por 256 colunas. Dependendo da análise esse limite já se torna crítico.
- Não é uma ferramenta gratuita como o seu concorrente direto LibreOffice ou Google Docs; O valor de mercado varia de R$ 500,00 a R$700,00 e deve ser pago, sobre tudo pelos profissionais que estiverem analisando dados de fraudes. O subconsciente não aceita bem essas situações.
- A manutenção das customizações se torna caótica se forem implementadas muitas regras.
- Difícil automatizar relatórios. Já ouvi muito, o jargão, “Vê lá com o guri do Excel”.
Características chaves do R e do Python
Abaixo relaciono algumas características chaves (não todas, claro) destas ferramentas R e Python para Advanced Analytics:
- Manipulação de dados em grandes quantidades.
- Automação e replicabilidade das análises.
- Leitura de diversos tipos de formatos diferentes de fontes diversas de informação, até em tempo real, incluindo o próprio .XLSX.
- Gestão do projeto e manutenção dos códigos estruturados.
- Gratuitos e de livre distribuição.
- Multi-plataforma.
- Integração com centenas de algoritmos de inteligência artificial conhecidos como Machine Learning.
Fazendo algumas pesquisas, achei este gráfico bastante relevante comparando a curva de aprendizado do R versus do Excel, que simplificando quer dizer que, coisas de pouca complexidade são fáceis de fazer em Excel e difíceis em R, já tarefas mais robustas são difíceis de fazer no Excel e fáceis no R. Pode se incluir o Python também junto ao R.
Tendo a oportunidade de conhecer o cenário de trabalho das principais empresas do país, a grande maioria da minha amostragem pessoal, está lá na dificuldade 75 do eixo Y do Excel com uma série de cobranças por resultados práticos que às vezes são feitas apenas pela intuição. Muito poucos estão conseguindo chegar a aplicações reais de Machine Learning por este gargalo no meio do caminho da preparação dos dados. Dizemos que o tratamento de dados garante emprego e renda.
Conclusões da Experiência
Cientista de dados, ocupam grande parte da cognição analisando duas coisas:
- Dados.
- Ferramentas de análise de dados (sempre estão surgindo coisas novas).
Levando em consideração a limitação de tempo para estudo e que os finais de semana são finitos, a linguagem R e Python acabam colidindo e gerando uma bifurcação no caminho dos analistas que devem decidir entre uma ou a outra para resolver os gargalos do Excel. Abaixo está o sumário dos comentários mais interessantes que vi no Linkedin e espero que isso possa ajudar quem está enfrentando este dilema:
O ideal é aprender as duas linguagens, mas a decisão parece depender principalmente do background profissional e dos objetivos do analista como segue:
- Se o background está baseado na área de gestão como: administração, economia e contabilidade e seu objetivo é a tomada de decisão e geração de relatórios. Minha opinião é focar em R. O Rstudio se apresenta de forma muito integra tanto em compatibilidade com os sistemas operacionais como em sua documentação no padrão R, que é ótimo para o aprendizado e tem uma base estatística muito rica e relatórios com alta qualidade gráfica. A questão estética conta mais do que se imagina no mundo dos negócios.
- Se o background for de áreas de desenvolvimento de software tais como: Ciências da Computação, Automação e Engenharias e o foco do trabalho é a criação de ferramentas de análise com robustez, melhor Python. Ainda, leva vantagens em algumas bibliotecas de mineração de texto e de Machine Learning.
O Python, é uma linguagem robusta e genérica suficiente para entrar em qualquer área, colidindo na estatística com R e desenvolvimento de plataforma com JAVA/SCALA, que a propósito é a linguagem que utilizamos para a construção do Aquarela VORTX. Na minha experiência, queria apenas fazer um teste com um sistema simples feito em Python e a documentação me levou a instalar um pacote gigantesco chamado Anaconda que, por sua vez, conflitou com a versão Python 2.7 e 3 tanto no MAC como no Linux Centos 7. Pesquisando com amigos geeks, explicaram-me que houve uma mudança bastante grande entre essas versões e que também existem diversas outras formas de ter instalado o Jupyter. Enfim, voltando ao texto inicial é importante que as ferramentas não desvirtuem a orientação de negócio, principalmente daqueles com perfil de gestão.
Finalizando, independente da linguagem que você escolher, desejo bastante sucesso nos seus projetos. A otimização das empresas e organizações é a otimização do nosso país. Vamos em frente! Em breve mais análises.
0 comentários:
Postar um comentário