Appendix C — Dicas de Geracao de Codigo com IA
As IAs sao ferramentas extremamente uteis e validas no contexto da programacao. Primeiramente, nenhuma IA fara milagres — voce precisa ser claro e evidente nas suas perguntas. Como diria algum matematico: “Uma pergunta bem formulada ja esta respondida.”
Existem tarefas de programacao que ate o mais experiente dos programadores tera que ler a documentacao de varias bibliotecas e raciocinar muito tempo para executar. A IA facilita esse trabalho, gerando o codigo pesado enquanto voce foca na logica do problema.
Como diriam muitos programadores, a tarefa de gerar codigo e a mais trivial. O importante e juntar aqueles codigos em algo que faca sentido. Outra coisa que dizem e que se passa muito mais tempo debugando (corrigindo) um codigo do que gerando ele em si: primeiro se pensa a logica, depois os problemas sao solucionados um a um. E e ai que a IA entra como aliada. A IA tem o papel de gerar codigo e nos temos o papel de checar se ele faz sentido.
C.1 Por que usar IA para programacao estatistica?
Na pratica estatistica, voce frequentemente precisa:
- Lembrar a sintaxe exata de uma funcao que usa raramente
- Converter formulas matematicas em codigo funcional
- Criar visualizacoes que exigem muita configuracao
- Adaptar codigo de um formato para outro (ex: R para Python)
- Tratar dados com formatos inconsistentes
Para todas essas tarefas, uma IA generativa pode economizar horas de trabalho. Mas o ponto chave e: voce precisa entender o que o codigo faz para verificar se esta correto.
A IA e uma ferramenta de produtividade, nao de substituicao. Voce precisa ter conhecimento suficiente para avaliar criticamente o que ela produz.
C.2 Como escrever bons prompts para codigo estatistico
A qualidade do codigo gerado depende diretamente da qualidade do seu prompt (pergunta/instrucao). Aqui estao diretrizes praticas:
C.2.1 1. Seja especifico sobre o contexto
Ruim: > “Faca um grafico dos meus dados.”
Bom: > “Tenho um DataFrame em R chamado dados com as colunas idade (numerica), salario (numerica) e setor (categorica com 3 niveis: ‘Industria’, ‘Comercio’, ‘Servicos’). Quero um grafico de dispersao de idade vs. salario, colorido por setor, usando ggplot2, com titulo e rotulos em portugues.”
C.2.2 2. Especifique a linguagem e as bibliotecas
Ruim: > “Como faco um teste t?”
Bom: > “Em R, usando a funcao t.test(), como faco um teste t para duas amostras independentes comparando o vetor grupo_a com o vetor grupo_b, assumindo variancias desiguais? Mostre como interpretar a saida.”
C.2.3 3. Forneca o formato dos dados
Quando possivel, mostre um exemplo dos seus dados:
“Meus dados CSV tem este formato:
nome;idade;nota;aprovado Ana;22;8.5;sim Bruno;25;6.0;naoO separador e ponto e virgula e o decimal e ponto. Como importo isso em Python com Pandas e calculo a media das notas por status de aprovacao?”
C.2.4 4. Peca explicacoes
“Faca um intervalo de confianca de 95% para a media em R e explique cada linha do codigo para que eu entenda o que esta acontecendo.”
C.2.5 5. Itere sobre a resposta
Se o primeiro resultado nao for perfeito, refine:
“O codigo funcionou, mas quero que o grafico use as cores #448EE3 e #2D4188 e que o eixo Y comece em zero.”
C.3 Exemplos praticos
C.3.1 Exemplo 1: Gerar tabela de frequencias em R
Prompt: > “Em R, tenho um vetor chamado notas com 30 valores numericos entre 0 e 10. Quero criar uma tabela de distribuicao de frequencias com 5 classes de amplitude igual, contendo: limite inferior, limite superior, frequencia absoluta, frequencia relativa e frequencia acumulada. Use apenas funcoes basicas do R.”
C.3.2 Exemplo 2: Regressao linear em Python
Prompt: > “Em Python, usando statsmodels, tenho um DataFrame df com colunas preco e area. Quero ajustar uma regressao linear simples (preco ~ area), exibir o resumo (summary), e criar um grafico de dispersao com a reta ajustada usando matplotlib. Inclua a equacao e o R-quadrado no grafico.”
C.3.3 Exemplo 3: Teste de hipotese com interpretacao
Prompt: > “Em R, tenho dois vetores: antes e depois, que representam medidas do mesmo grupo de 20 pacientes antes e depois de um tratamento. Faca um teste t pareado com nivel de significancia de 5%, mostre o codigo completo e escreva uma interpretacao textual do resultado no formato de um relatorio.”
C.4 Ciladas comuns: quando a IA erra
C.4.1 Alucinacoes
A IA pode inventar funcoes que nao existem, parametros incorretos ou bibliotecas ficticias. Isso e chamado de alucinacao.
Como detectar:
- Se uma funcao parece muito conveniente e voce nunca ouviu falar dela, verifique na documentacao oficial
- Execute o codigo — se der erro de “funcao nao encontrada”, provavelmente foi inventada
- Desconfie de bibliotecas com nomes muito especificos que voce nao conhece
C.4.2 Resultados numericos incorretos
A IA pode aplicar a formula errada ou usar parametros estatisticos trocados (ex: usar desvio padrao populacional quando deveria ser amostral).
Como verificar:
- Calcule exemplos simples na mao e compare com o resultado do codigo
- Verifique se a funcao usa
ddof=1(Python) ouna.rm = TRUE(R) quando necessario - Confira a interpretacao dos resultados com o material do curso
C.4.3 Codigo funcional mas ineficiente
A IA pode gerar codigo que funciona, mas que usa loops desnecessarios onde operacoes vetorizadas seriam mais apropriadas. Isso e especialmente relevante em R e Python com grandes volumes de dados.
Sempre execute o codigo gerado pela IA e verifique os resultados antes de usa-los em qualquer trabalho ou relatorio. Nunca confie cegamente na saida de uma IA.
C.5 Ferramentas recomendadas
| Ferramenta | Tipo | Acesso | Melhor para |
|---|---|---|---|
| ChatGPT (OpenAI) | Chatbot | Web / App | Perguntas gerais, explicacoes, geracao de codigo |
| Claude (Anthropic) | Chatbot | Web / App / API | Analise detalhada, codigo longo, raciocinio estatistico |
| Claude Code | CLI | Terminal | Projetos maiores, edicao de arquivos, automacao |
| GitHub Copilot | Autocompletar | VS Code / RStudio | Sugestoes em tempo real enquanto programa |
| Google Gemini | Chatbot | Web / Colab | Integracao com Google Colab e dados Google |
Para estudantes, o ChatGPT e o Claude oferecem versoes gratuitas que sao mais do que suficientes para as tarefas deste livro. O GitHub Copilot e gratuito para estudantes com o GitHub Student Developer Pack.
C.6 Etica e integridade academica
O uso de IA na vida academica levanta questoes importantes que voce deve considerar:
C.6.1 O que e aceitavel
- Usar IA para aprender: pedir explicacoes, exemplos, analogias
- Usar IA para depurar: encontrar erros no seu codigo
- Usar IA para consultar sintaxe: lembrar como usar uma funcao especifica
- Usar IA como ponto de partida: gerar um esqueleto de codigo que voce entende e modifica
C.6.2 O que exige cuidado
- Copiar codigo sem entender: se voce nao consegue explicar o que cada linha faz, voce nao aprendeu
- Nao citar o uso de IA: em trabalhos academicos, seja transparente sobre o uso de ferramentas de IA
- Usar IA em avaliacoes: respeite as regras do seu professor e da sua instituicao — cada disciplina pode ter politicas diferentes
- Confiar cegamente: resultados de IA podem estar errados, especialmente em interpretacoes estatisticas
C.6.3 Recomendacoes gerais
- Transparencia: sempre informe ao professor quando usar IA em trabalhos
- Compreensao: so use codigo que voce consegue explicar
- Verificacao: sempre confira os resultados com calculos manuais ou fontes confiaveis
- Aprendizado: use a IA como tutora, nao como substituta
Este proprio livro foi desenvolvido com o auxilio de IA (Claude Code), demonstrando na pratica o uso etico e produtivo dessas ferramentas. Todo o conteudo foi revisado e validado pelo autor, que utilizou a IA como ferramenta de produtividade para redigir, formatar e organizar o material, sempre mantendo o controle sobre o conteudo tecnico e pedagogico.