AYUDA DE PYTHON

Dask Python (Cómo funciona para desarrolladores)

Actualizado agosto 13, 2024
Compartir:

Introducción

Python es un potente lenguaje para el análisis de datos y el aprendizaje automático, pero el manejo de grandes conjuntos de datos puede suponer un reto para el análisis de datos. Aquí es donde Dask**** entra. Dask es una biblioteca de código abierto que proporciona paralelización avanzada para análisis, lo que permite un cálculo eficiente en grandes conjuntos de datos que superan la capacidad de memoria de una sola máquina. En este artículo, veremos el uso básico de la biblioteca Dask y otra biblioteca de generación de PDF muy interesante llamada IronPDF de IronSoftware para generar documentos PDF.

¿Por qué utilizar Dask?

Daskestá diseñado para escalar tu código Python desde un único portátil hasta un gran cluster. Se integra perfectamente con bibliotecas populares de Python como NumPy, pandas y scikit-learn, para permitir la ejecución paralela sin cambios significativos en el código.

Características principales de Dask

  1. Computación en paralelo: Dask permite ejecutar varias tareas simultáneamente, lo que acelera considerablemente los cálculos.

  2. Escalabilidad: Puede manejar conjuntos de datos mayores que la memoria dividiéndolos en trozos más pequeños y procesándolos en paralelo.

  3. Compatibilidad: Funciona bien con las bibliotecas de Python existentes, por lo que es fácil de integrar en su flujo de trabajo actual.

  4. Flexibilidad: Proporciona colecciones de alto nivel como Dask DataFrame, task graphs, Dask Array, Dask Cluster y Dask Bag, que imitan a pandas, NumPy y lists, respectivamente.

Primeros pasos con Dask

Instalación

Puedes instalar Dask usando pip:

pip install dask[complete]
pip install dask[complete]
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Uso básico

He aquí un ejemplo sencillo para demostrar cómo Dask puede paralelizar cálculos:

import dask.array as da
# Create a large Dask array
x = da.random.random((10, 10), chunks=(10, 10))
print('Gneerated Input')
print(x.compute())
# Perform a computation
result = x.mean().compute()
print('Gneerated Mean')
print(result)
import dask.array as da
# Create a large Dask array
x = da.random.random((10, 10), chunks=(10, 10))
print('Gneerated Input')
print(x.compute())
# Perform a computation
result = x.mean().compute()
print('Gneerated Mean')
print(result)
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

En este ejemplo, Dask crea un array grande y lo divide en trozos más pequeños. El cálculo() activa el cálculo paralelo y devuelve el resultado. El grafo de tareas se utiliza internamente para conseguir computación paralela en Python Dask.

Salida

Dask Python (Cómo funciona para desarrolladores): Figura 1

Marcos de datos Dask

Los DataFrames de Dask son similares a los DataFrames de pandas pero están diseñados para manejar conjuntos de datos más grandes que la memoria. He aquí un ejemplo:

import dask
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
print(df[["x", "y"]].resample("1h").mean().head(10))
import dask
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
print(df[["x", "y"]].resample("1h").mean().head(10))
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

El código muestra la capacidad de Dask para manejar datos de series temporales, generar conjuntos de datos sintéticos y calcular agregaciones como medias horarias de forma eficiente, aprovechando sus capacidades de procesamiento paralelo. Se utilizan múltiples procesos Python, un planificador distribuido y múltiples núcleos de recursos computacionales para lograr la computación paralela en Python Dask DataFrames.

Salida

Dask Python (Cómo funciona para los desarrolladores): Figura 2

Buenas prácticas

  1. Empezar poco a poco: Comience con pequeños conjuntos de datos para entender cómo funciona Dask antes de escalar.

  2. Utiliza el panel de control: Dask proporciona un panel de control para supervisar el progreso y el rendimiento de tus cálculos.

  3. Optimice el tamaño de los trozos: Elija tamaños de trozo adecuados para equilibrar el uso de memoria y la velocidad de cálculo.

Presentación de IronPDF

Dask Python (Cómo funciona para desarrolladores): Figura 3 - IronPDF: La biblioteca PDF de Python

IronPDF es una robusta biblioteca de Python diseñada para crear, editar y firmar documentos PDF utilizando HTML, CSS, imágenes y JavaScript. Hace hincapié en la eficiencia del rendimiento con un uso mínimo de memoria. Las características clave incluyen:

  • Conversión de HTML a PDF: Convierte fácilmente archivos HTML, cadenas y URLs en documentos PDF, aprovechando las capacidades de renderizado PDF de Chrome.
  • Soporte multiplataforma: Funciona perfectamente con Python 3+ en Windows, Mac, Linux y varias plataformas en la nube. También es compatible con entornos .NET, Java, Python y Node.js.
  • Edición y firma: Personalice las propiedades de los PDF, aplique medidas de seguridad como contraseñas y permisos, y añada firmas digitales sin problemas.
  • Plantillas de página y configuración: Personalice los diseños de PDF con encabezados, pies de página, números de página, márgenes ajustables, tamaños de papel personalizados y diseños adaptables.

  • Cumplimiento de estándares: Cumplimiento estricto de estándares PDF como PDF/A y PDF/UA, garantizando la compatibilidad con la codificación de caracteres UTF-8. También admite la gestión eficaz de activos como imágenes, hojas de estilo CSS y fuentes.

Instalación

pip install ironpdf 
pip install dask
pip install ironpdf 
pip install dask
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Generar documentos PDF utilizando IronPDF y Dask.

Requisitos previos

  1. Asegúrese de que Visual Studio Code está instalado

  2. Python versión 3 está instalado

    Para empezar, creemos un archivo Python para añadir nuestros scripts

    Abra Visual Studio Code y cree un archivo, daskDemo.py.

    Instale las bibliotecas necesarias:

pip install dask
pip install ironpdf
pip install dask
pip install ironpdf
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

A continuación, añada el siguiente código python para demostrar el uso de los paquetes IronPDF y Dask python

import dask
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
dfmean = df[["x", "y"]].resample("1h").mean().head(10)
print(dfmean)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with Dask</h1>"
content += "<h2>Generated DataFrame (First 10)</h2>"
rows = df.head(10)
for i in range(10):    
    row = df.head(10).iloc[i]
    content += f"<p>{str(row[0])},  {str(row[2])},  {str(row[3])}</p>"
content += "<h2>Computed Mean Hourly DataFrame (First 10)</h2>"
for i in range(10):    
    row = dfmean.head(10).iloc[i]
    content += f"<p>{str(row[0])}</p>"
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoIronPDF-Dask.pdf")
import dask
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
dfmean = df[["x", "y"]].resample("1h").mean().head(10)
print(dfmean)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with Dask</h1>"
content += "<h2>Generated DataFrame (First 10)</h2>"
rows = df.head(10)
for i in range(10):    
    row = df.head(10).iloc[i]
    content += f"<p>{str(row[0])},  {str(row[2])},  {str(row[3])}</p>"
content += "<h2>Computed Mean Hourly DataFrame (First 10)</h2>"
for i in range(10):    
    row = dfmean.head(10).iloc[i]
    content += f"<p>{str(row[0])}</p>"
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoIronPDF-Dask.pdf")
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Código Explicación

Este fragmento de código integra Dask para el manejo de datos e IronPDF para la generación de PDF. Lo demuestra:

  1. Integración con Dask: Utiliza `dask.datasets.timeseries()\para generar un DataFrame de series temporales sintéticas (\df\). Imprime las 10 primeras filas (\df.head(10)`) y calcula la media horaria DataFrame (`dfmean`) basado en las columnas "x" e "y".

  2. Uso de IronPDF: Establece la clave de licencia de IronPDF usando `License.LicenseKey`. Crea una cadena HTML (\Contenido) que contiene las cabeceras y los datos de los DataFrames generados y calculados.

    Convierte este contenido HTML en un PDF (`pdf`) usando `ChromePdfRenderer()`.

    Guarda el PDF como "DemoIronPDF-Dask.pdf".

    Este código combina las capacidades de Dask para la manipulación de datos a gran escala y la funcionalidad de IronPDF para convertir contenido HTML en un documento PDF.

Salida

Dask Python (Cómo funciona para los desarrolladores): Figura 4

PDF

Dask Python (Cómo funciona para los desarrolladores): Figura 5

Licencia IronPDF

IronPDF para que los usuarios puedan comprobar sus amplias funciones antes de comprarlo.

Coloque la clave de licencia al principio del script antes de utilizar Paquete IronPDF:

from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Conclusión

Dask es una herramienta versátil que puede mejorar significativamente sus capacidades de procesamiento de datos en Python. Al permitir la computación paralela y distribuida, le permite trabajar con grandes conjuntos de datos de forma eficiente e integrarse perfectamente con su ecosistema Python existente. IronPDF es una potente biblioteca de Python para crear y manipular documentos PDF utilizando HTML, CSS, imágenes y JavaScript. Ofrece funciones como la conversión de HTML a PDF, la edición de PDF, la firma digital y la compatibilidad multiplataforma, lo que lo hace adecuado para diversas tareas de generación y gestión de documentos en aplicaciones Python.

Junto con ambas bibliotecas, los científicos de datos pueden realizar análisis avanzados de datos y operaciones de ciencia de datos. A continuación, almacene los resultados de salida en formato PDF estándar utilizando IronPDF.

< ANTERIOR
criptografía Python (Cómo funciona para desarrolladores)
SIGUIENTE >
Wand Python (Cómo funciona para desarrolladores)

¿Listo para empezar? Versión: 2024.8 acaba de salir

Instalación pip gratuita View Licenses >