Boas respostas já apareceram. Portanto, compartilharei apenas alguns pensamentos com base na experiência pessoal: adapte os relevantes à sua própria situação, conforme necessário.
Para antecedentes e contexto- para que você possa dar conta de quaisquer preconceitos pessoais que possam surgir nesta mensagem - grande parte do meu trabalho foi ajudar as pessoas a tomar decisões importantes com base em conjuntos de dados relativamente pequenos. Eles são pequenos porque os dados podem ser caros de coletar (US $ 10 mil para a primeira amostra de um poço de monitoramento de águas subterrâneas, por exemplo, ou vários milhares de dólares para análises de produtos químicos incomuns). Estou acostumado a obter o máximo possível de todos os dados disponíveis, explorá-los até a morte e inventar novos métodos para analisá-los, se necessário. No entanto, nos últimos anos, fui contratado para trabalhar em alguns bancos de dados razoavelmente grandes, como um dos dados socioeconômicos e de engenharia que cobrem todos os EUA no nível do bloco do Censo (8,5 milhões de registros,
Com conjuntos de dados muito grandes, toda a abordagem e a mentalidade mudam . Agora há muitos dados para analisar. Algumas das implicações imediatas (e, em retrospecto) óbvias (com ênfase na modelagem de regressão) incluem
Qualquer análise que você pensa em fazer pode levar muito tempo e computação. Você precisará desenvolver métodos de subamostragem e trabalhar em conjuntos de dados parciais para poder planejar seu fluxo de trabalho ao calcular com o conjunto de dados inteiro. (A subamostragem pode ser complicada, porque você precisa de um subconjunto representativo dos dados que é tão rico quanto o conjunto de dados inteiro. E não se esqueça de validar cruzadamente seus modelos com os dados retidos.)
Por isso, você passará mais tempo documentando o que faz e criando scripts para tudo (para que possa ser repetido).
Como o @dsimcha acabou de observar, boas habilidades de programação são úteis. Na verdade, você não precisa de muita experiência em ambientes de programação, mas precisa de uma vontade de programar, a capacidade de reconhecer quando a programação ajudará (em praticamente todas as etapas, na verdade) e um bom entendimento dos elementos básicos de programação. ciência da computação, como o design de estruturas de dados apropriadas e como analisar a complexidade computacional dos algoritmos. Isso é útil para saber com antecedência se o código que você planeja escrever será dimensionado para o conjunto de dados completo.
Alguns conjuntos de dados são grandes porque possuem muitas variáveis (milhares ou dezenas de milhares, todas diferentes). Espere gastar muito tempo apenas resumindo e entendendo os dados . Um livro de códigos ou dicionário de dados e outras formas de metadados tornam-se essenciais.
Muito do seu tempo é gasto simplesmente movendo dados e reformatando-os. Você precisa de habilidades com o processamento de grandes bancos de dados e habilidades com resumo e representação gráfica de grandes quantidades de dados. ( O pequeno múltiplo do Tufte vem à tona aqui.)
Algumas de suas ferramentas de software favoritas falharão. Esqueça planilhas, por exemplo. Muitos softwares de código aberto e acadêmicos simplesmente não serão capazes de lidar com grandes conjuntos de dados: o processamento levará uma eternidade ou o software falhará. Espere isso e verifique se você tem várias maneiras de realizar suas tarefas principais.
Quase todo teste estatístico que você executa será tão poderoso que é quase certo identificar um efeito "significativo". Você precisa se concentrar muito mais na importância estatística , como tamanho do efeito, em vez de importância.
Da mesma forma, a seleção de modelos é problemática porque quase qualquer variável e qualquer interação que você possa contemplar parecerá significativa. Você precisa se concentrar mais na significância das variáveis que escolhe analisar.
Haverá informações mais que suficientes para identificar transformações não lineares apropriadas das variáveis. Saiba como fazer isso.
Você terá dados suficientes para detectar relações não lineares, mudanças nas tendências, não estacionariedade, heterocedasticidade etc.
Você nunca vai terminar . Há tantos dados que você pode estudá-los para sempre. É importante, portanto, estabelecer seus objetivos analíticos desde o início e mantê-los constantemente em mente.
Terminarei com uma pequena anedota que ilustra uma diferença inesperada entre a modelagem de regressão com um grande conjunto de dados em comparação com um menor. No final do projeto, com os dados do Censo, um modelo de regressão que eu desenvolvi precisava ser implementado no sistema de computação do cliente, o que significava escrever código SQL em um banco de dados relacional. Esta é uma etapa rotineira, mas o código gerado pelos programadores de banco de dados envolveu milhares de linhas de SQL. Isso tornou quase impossível garantir que estava livre de bugs - embora pudéssemos detectar os bugs (fornecia resultados diferentes nos dados de teste), encontrá-los era outra questão. (Tudo que você precisa é de um erro tipográfico em um coeficiente ...) Parte da solução foi escrever um programa que gerasse os comandos SQL diretamente das estimativas do modelo. Isso garantiu que o que saiu do pacote de estatísticas foi exatamente o que foi inserido no RDBMS. Como bônus, algumas horas gastas na escrita desse script substituíram possivelmente várias semanas de codificação e teste SQL. Essa é uma pequena parte do que significa para o estatístico ser capaz de comunicar seus resultados.