dask
Масштабирование pandas и NumPy с помощью распределённых вычислений Dask
Auch verfügbar von: davila7
Обрабатывайте наборы данных, превышающие объём доступной оперативной памяти, с помощью параллельных вычислений. Преобразуйте рабочие процессы pandas и NumPy с одной машины для запуска на нескольких ядрах или распределённых кластерах без переписывания кода.
Die Skill-ZIP herunterladen
In Claude hochladen
Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen
Einschalten und loslegen
Teste es
Verwendung von "dask". How do I read multiple CSV files and combine them into one Dask DataFrame?
Erwartetes Ergebnis:
- 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
Verwendung von "dask". When should I use Dask Arrays vs Dask DataFrames?
Erwartetes Ergebnis:
- 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
Verwendung von "dask". How do I avoid memory errors with Dask?
Erwartetes Ergebnis:
- 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
Sicherheitsaudit
SicherPure 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.
Risikofaktoren
⚙️ Externe Befehle (3)
📁 Dateisystemzugriff (1)
🌐 Netzwerkzugriff (1)
Qualitätsbewertung
Was du bauen kannst
Масштабирование рабочих процессов pandas
Преобразуйте код pandas для работы с наборами данных, превышающими объём ОЗУ, заменив импорт и используя Dask DataFrames с минимальными изменениями в коде.
Параллельное обучение моделей
Распределите предобработку данных и вывод моделей между несколькими рабочими узлами с помощью Dask Futures для перебора гиперпараметров.
Обработка больших массивов
Работайте с нау��ными наборами данных из файлов HDF5 или Zarr, превышающими объём памяти, используя Dask Arrays с пофрагментными операциями.
Probiere diese Prompts
Покажите, как преобразовать мой код pandas DataFrame для использования Dask с наборами данных, превышающими ОЗУ, включая чтение нескольких CSV-файлов и выполнение операций groupby.
Объясните, как создавать и обрабатывать Dask Arrays из файлов HDF5 или Zarr с оптимальными размерами фрагментов, включая выбор размеров фрагментов и выполнение редукций.
Продемонстрируйте, как использовать Dask Futures для динамической отправки задач, включая настройку локального кластера, распределение больших данных и получение результатов из зависимых задач.
Помогите оптимизировать мой рабочий процесс Dask - я хочу понять, как выбрать правильный планировщик, выявить узкие места с помощью панели мониторинга и исправить проблемы с памятью из-за неправильного размера фрагментов.
Bewährte Verfahren
- Позвольте Dask обрабатывать загрузку данных с самого начала - избегайте создания объектов pandas локально перед преобразованием в коллекции Dask
- Цельтесь на размер фрагментов около 100 МБ и 10 фрагментов на ядро рабочего узла для сбалансированного параллелизма и использования памяти
- Используйте map_partitions или map_blocks для объединения нескольких операций в отдельные задачи и снижения накладных расходов на планирование
Vermeiden
- Вызов .compute() внутри циклов создаёт отдельные графы задач для каждой итерации - используйте dask.compute(*computations) вместо этого
- Загрузка целых наборов данных в pandas перед передачей в Dask противоречит цели - используйте средства чтения Dask напрямую
- Использование планировщика с потоками для чистого Python-кода (обработка текста, пользовательские функции) - переключитесь на процессы, чтобы избежать контензии GIL