dask
Escalar pandas e NumPy com computação distribuída Dask
Também disponível em: davila7
Processe conjuntos de dados maiores que a RAM disponível usando computação paralela. Transforme fluxos de trabalho de pandas e NumPy de máquina única para executar em múltiplos núcleos ou clusters distribuídos sem reescrever seu código.
Baixar o ZIP da skill
Upload no Claude
Vá em Configurações → Capacidades → Skills → Upload skill
Ative e comece a usar
Testar
A utilizar "dask". How do I read multiple CSV files and combine them into one Dask DataFrame?
Resultado esperado:
- Use dd.read_csv with a glob pattern to read multiple files: ddf = dd.read_csv('data/2024-*.csv')
- The read_csv function is lazy - it builds a task graph without loading data
- After combining, perform operations like groupby and aggregations lazily
- Call .compute() only when you need the final results
A utilizar "dask". When should I use Dask Arrays vs Dask DataFrames?
Resultado esperado:
- Use Arrays for numeric data that fits NumPy operations - scientific computing, image processing, matrix operations
- Use DataFrames for tabular data with named columns - database-like operations, CSV processing, structured data
- Bags handle unstructured data like text and JSON before converting to Arrays or DataFrames
- Futures give fine-grained control for dynamic, interactive parallel workflows
A utilizar "dask". How do I avoid memory errors with Dask?
Resultado esperado:
- Choose chunk sizes of approximately 100 MB per chunk or 10 chunks per core
- Never load data into pandas first then convert - use Dask readers directly
- Avoid calling .compute() repeatedly in loops - use dask.compute() for multiple results at once
- Use the dashboard to monitor memory usage and identify problematic tasks
Auditoria de Segurança
SeguroPure documentation skill with no executable code. All 448 static findings are false positives. The analyzer misinterpreted markdown inline code formatting (backticks like `dask.compute()`) as shell execution, and flagged legitimate computing terms like 'md5', 'command', 'control', 'connect' as security threats. This is standard Dask library documentation teaching parallel computing patterns.
Fatores de risco
⚙️ Comandos externos (3)
📁 Acesso ao sistema de arquivos (1)
🌐 Acesso à rede (1)
Pontuação de qualidade
O Que Você Pode Construir
Escalar fluxos de trabalho pandas
Transforme código pandas para lidar com conjuntos de dados maiores que RAM trocando a importação e usando Dask DataFrames com alterações mínimas de código.
Treinamento de modelo paralelo
Distribua pré-processamento de dados e inferência de modelo em múltiplos trabalhadores usando Dask Futures para varreduras de hiperparâmetros.
Processar arrays grandes
Trabalhe com conjuntos de dados científicos de arquivos HDF5 ou Zarr que excedem memória usando Dask Arrays com operações em blocos.
Tente Estes Prompts
Mostre-me como converter meu código de DataFrame pandas para usar Dask para conjuntos de dados que excedem RAM, incluindo ler múltiplos arquivos CSV e realizar operações groupby.
Explique como criar e processar Dask Arrays de arquivos HDF5 ou Zarr com tamanhos de bloco ótimos, incluindo como escolher tamanhos de bloco e realizar reduções.
Demonstre como usar Dask Futures para submissão dinâmica de tarefas, incluindo configurar um cluster local, distribuir dados grandes e coletar resultados de tarefas dependentes.
Ajude-me a otimizar meu fluxo de trabalho Dask - quero entender como escolher o agendador certo, identificar gargalos usando o dashboard e corrigir problemas de memória de dimensionamento incorreto de blocos.
Melhores Práticas
- Deixe Dask lidar com carregamento de dados desde o início - evite criar objetos pandas localmente antes de converter para coleções Dask
- Alvo para tamanhos de bloco de 100 MB e 10 blocos por núcleo de trabalho para paralelismo equilibrado e uso de memória
- Use map_partitions ou map_blocks para fundir múltiplas operações em tarefas únicas e reduzir overhead de agendamento
Evitar
- Chamar .compute() dentro de loops cria grafos de tarefas separados para cada iteração - use dask.compute(*computations) em vez disso
- Carregar conjuntos de dados inteiros em pandas antes de passar para Dask derrota o propósito - use leitores Dask diretamente
- Usar o agendador threaded para código Python puro (processamento de texto, funções personalizadas) - troque para processos para evitar contenção do GIL