Apresentação
UFPE
Como será a disciplina:

O que é o R? O que é o Python?
É uma linguagem de programação voltado para a análise estatística e gráficos;
É uma linguagem de programação de alto nível e de código aberto (R é Software Livre);
É uma das linguagens mais utilizadas em estatística e análise de dados, e possui uma grande quantidade de pacotes para tais fins.
É uma linguagem de programação de alto nível e de código aberto (o Python é Open Source);
É uma das linguagens mais utilizadas em desenvolvimento de software e análise de dados.;
É uma linguagem de programação que também possui uma grande quantidade de pacotes para análise de dados.


Geralmente, utilizamos a programação quando “se precisa automatizar processos do nosso dia a dia”.
Para programarmos, usamos uma linguagem de programação que possibilita informar ao computador como ele deve se comportar para assim conseguirmos automatizar o processo desejado
- Programação de Alto Nível:
Uma linguagem de programação de alto nível disponibiliza comandos (palavras-chaves) bem próximos de uma linguagem natural. Com isso, o processo de “conversar” com o computador é facilitado, pois essas palavras-chaves fornecem uma maior clareza de como se deve orquestrar o que o computador deve fazer por nós.
- Programação de Baixo Nível:
Uma linguagem de programação de baixo nível é mais próxima da linguagem de máquina, ou seja, mais próxima do que o computador entende. Com isso, o processo de “conversar” com o computador é mais difícil, pois é necessário entender como o computador funciona para poder programar. Um exemplo de linguagem de baixo nível é o Assembly, que é uma linguagem de programação que utiliza códigos de máquina para programar.
section .data
msg db 'Hello, World!', 0xA ; Mensagem a ser impressa seguida de nova linha
len equ $ - msg ; Calcula o comprimento da string
section .text
global _start ; Define o ponto de entrada do programa
_start:
mov edx, len ; Define o terceiro argumento: tamanho da mensagem
mov ecx, msg ; Define o segundo argumento: ponteiro para a mensagem
mov ebx, 1 ; Define o primeiro argumento: descritor de arquivo (stdout)
mov eax, 4 ; Define o número da chamada de sistema para sys_write
int 0x80 ; Chama o kernel
mov eax, 1 ; Define o número da chamada de sistema para sys_exit
xor ebx, ebx ; Define o argumento para sys_exit: 0
int 0x80 ; Chama o kernel
Integrated Development Environment (IDE) é o ambiente de desenvolvimento integrado, ou seja, um software que agrega várias funções necessárias para cria um ambiente de criação de código e programação. Como já mencionado, o R possui versões compatíveis com vários sistemas operacionais, como o Linux, o Windows e o macOS. Para cada sistema existe várias IDEs que podem ser utilizadas para programar em R, em algumas dessas IDEs também possuem versões para todos os sistemas. A escolha da melhor IDE é aquela que o usuário ficar mais confortável para programar, entretanto, segue algumas IDEs recomendadas para utilização, principalmente para novos usuários e programadores do R:
| Vantagens | Desvantagens |
|---|---|
| Leve e simples, ideal para uso básico | Interface gráfica limitada e pouco amigável |
| Instalação direta e integração nativa com R | Falta de recursos avançados (R Markdown, Shiny, etc.) |
| Consumo mínimo de recursos | Menos intuitivo para iniciantes |
| Vantagens | Desvantagens |
|---|---|
| Interface amigável para iniciantes | Pode parecer complexo para usuários básicos |
| Instalação simples e integração com R | |
| Recursos colaborativos (Git, RMarkdown) | |
| Ferramentas abrangentes para scripts e visualização |
| Vantagens | Desvantagens |
|---|---|
| Suporte a múltiplas linguagens (R, Python) | Ainda em beta, pode ter problemas de estabilidade |
| Alta personalização, herdada do VS Code | Faltam alguns recursos como saída inline |
| Vantagens | Desvantagens |
|---|---|
| Alta personalização e suporte a múltiplas linguagens | Configuração inicial para R pode ser complexa |
| Boas ferramentas de conclusão de código | Menos focado em recursos específicos para R |
| Integração com Git e grande comunidade |
| Vantagens | Desvantagens |
|---|---|
| Leve e rápido, ideal para sistemas leves | Pode faltar recursos avançados para R |
| Suporte a múltiplas linguagens, incluindo R | Requer configuração para integração com R |
| Interface simples e fácil de usar |
| Vantagens | Desvantagens |
|---|---|
| Altamente personalizável e eficiente | Curva de aprendizado acentuada para iniciantes |
| Suporte a múltiplas linguagens com plugins | Pode faltar recursos específicos para R |
| Ideal para usuários avançados |
| Vantagens | Desvantagens |
|---|---|
| Altamente personalizável e poderoso | Curva de aprendizado acentuada para novos usuários |
| Suporte robusto para R via ESS | Pode ser menos amigável para tarefas específicas em R |
| Versátil, usado para várias tarefas | Requer mais configuração |
| Vantagens | Desvantagens |
|---|---|
| Acesso gratuito a recursos computacionais (GPUs e TPUs) | Limitações de tempo de uso e desconexão por inatividade |
| Nenhuma configuração inicial necessária | Dependência total de uma conexão com a internet |
| Facilidade de compartilhamento e colaboração em tempo real | Recursos (RAM, CPU, GPU) são variáveis e não garantidos |
| Integração nativa com o Google Drive | Armazenamento temporário que é apagado ao final da sessão |
| Vantagens | Desvantagens |
|---|---|
| Acesso gratuito a GPUs e TPUs por um quota semanal | Sessões interativas são limitadas em tempo de execução |
| Enorme acervo de datasets públicos facilmente acessíveis | O ambiente é menos flexível para projetos que não envolvem análise de dados |
| Versionamento de código automático (commits) que facilita o acompanhamento | Recursos computacionais (CPU, RAM) podem ser mais limitados que em outras plataformas |
| Integração perfeita com competições do Kaggle | A interface pode ser menos intuitiva para tarefas gerais de programação |
PlayGround - Tensorflow: https://playground.tensorflow.org/
LLM Visualization - https://bbycroft.net/llm
OBRIGADO!
Slide produzido com quarto
Tópicos Especiais em Estatística Computacional - Prof. Jodavid Ferreira