You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hola, gracias por la librería.
Cuando intento hacer un reporte de calidad de un dataset grande, se presentan muchos problemas. Solucioné lo del token, pero lograr evaluar la calidad de los datos (lo hice como prueba para ver los limites y si salía la evaluación de las filas) es, como esperaba, un proceso que toma mucho tiempo y consume muchos recursos (un poco más de 32 Gigas de RAM en su pico más alto, utilizó cerca de 9 núcleos de procesador y una GPU Radeon AMD RX 5700 XT al 20%. Envío el código utilizado.
Data = client.get(api_id, limit=RowLimit)
DS = pd.DataFrame.from_records(Data)
Vars = list(DS.columns)
Types = DS.dtypes
generar_reporte(df = DS, titulo='Perfilamiento datos SECOP I - Colombia', archivo='perfilamiento.html')
La base de datos no tiene columnas numéricas
Traceback (most recent call last):
File "", line 12, in
generar_reporte(df = DS, titulo='Perfilamiento datos SECOP I - Colombia', archivo='perfilamiento.html')
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\leila\reporte.py", line 172, in generar_reporte
dataframe_duplic_colum = base.EmparejamientoDuplicados(col=True)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\leila\calidad_datos.py", line 366, in EmparejamientoDuplicados
dupli = base.T.duplicated(keep=False)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\frame.py", line 2711, in transpose
result = self._constructor(
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\frame.py", line 464, in init
mgr = init_ndarray(data, index, columns, dtype=dtype, copy=copy)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\construction.py", line 210, in init_ndarray
return create_block_manager_from_blocks(block_values, [columns, index])
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 1658, in create_block_manager_from_blocks
mgr._consolidate_inplace()
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 945, in _consolidate_inplace
self.blocks = tuple(_consolidate(self.blocks))
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 1886, in _consolidate
merged_blocks = _merge_blocks(
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\blocks.py", line 3099, in _merge_blocks
new_values = np.vstack([b.values for b in blocks])
File "<array_function internals>", line 5, in vstack
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\numpy\core\shape_base.py", line 283, in vstack
return _nx.concatenate(arrs, 0)
File "<array_function internals>", line 5, in concatenate
MemoryError: Unable to allocate 974. MiB for an array with shape (9816364, 13) and data type object
The text was updated successfully, but these errors were encountered:
Muchas gracias por reportar el issue con el conjunto de datos del Portal de Datos Abiertos con código API 'rpmr-utcd'. En efecto, es un conjunto bastante grande y el cálculo de métricas de calidad es demorado y consume mucha memoria. Estamos en la evaluación del código para la optimización de los tiempos y eliminar el problema de la memoria.
Hola, gracias por la librería.
Cuando intento hacer un reporte de calidad de un dataset grande, se presentan muchos problemas. Solucioné lo del token, pero lograr evaluar la calidad de los datos (lo hice como prueba para ver los limites y si salía la evaluación de las filas) es, como esperaba, un proceso que toma mucho tiempo y consume muchos recursos (un poco más de 32 Gigas de RAM en su pico más alto, utilizó cerca de 9 núcleos de procesador y una GPU Radeon AMD RX 5700 XT al 20%. Envío el código utilizado.
api_id = 'rpmr-utcd'
token = 'xxxxxxxx'
RowLimit=1000000000
client = Socrata("www.datos.gov.co", app_token=token)
MetaData = client.get_metadata(api_id)
Data = client.get(api_id, limit=RowLimit)
DS = pd.DataFrame.from_records(Data)
Vars = list(DS.columns)
Types = DS.dtypes
generar_reporte(df = DS, titulo='Perfilamiento datos SECOP I - Colombia', archivo='perfilamiento.html')
La base de datos no tiene columnas numéricas
Traceback (most recent call last):
File "", line 12, in
generar_reporte(df = DS, titulo='Perfilamiento datos SECOP I - Colombia', archivo='perfilamiento.html')
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\leila\reporte.py", line 172, in generar_reporte
dataframe_duplic_colum = base.EmparejamientoDuplicados(col=True)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\leila\calidad_datos.py", line 366, in EmparejamientoDuplicados
dupli = base.T.duplicated(keep=False)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\frame.py", line 2711, in transpose
result = self._constructor(
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\frame.py", line 464, in init
mgr = init_ndarray(data, index, columns, dtype=dtype, copy=copy)
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\construction.py", line 210, in init_ndarray
return create_block_manager_from_blocks(block_values, [columns, index])
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 1658, in create_block_manager_from_blocks
mgr._consolidate_inplace()
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 945, in _consolidate_inplace
self.blocks = tuple(_consolidate(self.blocks))
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\managers.py", line 1886, in _consolidate
merged_blocks = _merge_blocks(
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\pandas\core\internals\blocks.py", line 3099, in _merge_blocks
new_values = np.vstack([b.values for b in blocks])
File "<array_function internals>", line 5, in vstack
File "C:\ProgramData\Anaconda3\envs\Leila\lib\site-packages\numpy\core\shape_base.py", line 283, in vstack
return _nx.concatenate(arrs, 0)
File "<array_function internals>", line 5, in concatenate
MemoryError: Unable to allocate 974. MiB for an array with shape (9816364, 13) and data type object
The text was updated successfully, but these errors were encountered: