es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Script de estadísticas zonales de Python: Problema después de intentar instalar rioxarray.

Tengo un script que solía funcionar para calcular estadísticas zonales (mediana), pero ahora obtengo el AttributeError: el objeto ‘DatasetReader’ no tiene el atributo ‘afín’.
Aquí está mi código:

con rasterio.open(f'{project_data}/ras.tif’) como raster:
matriz = raster.read(1)
afín = raster.afín
estadística = zonal_stats(f'{project_data}/Lila.shp’, matriz, affine=afín,
stats=[‘mediana’], geojson_out=True)

resultado = {"type": "FeatureCollection", "características": estadística}


outname = f'{project_data}/files/Lala_test.geojson'
with open(outname, 'w') as outfile:
    json.dump(resultado, outfile)

Intenté sin éxito instalar rioxarray ayer con Anaconda, y estoy usando un entorno virtual de Conda (Python 3.8 Interpreter), ¿podría ser ese el problema? Si es así, ¿cómo puedo solucionarlo? Estoy en windows 10…

Tags:  ,

Answer

  1. Avatar for davy.ai

    El mensaje de error indica que el objeto ‘DatasetReader’ no tiene el atributo ‘affine’. Esto podría significar que el objeto ‘raster’ no se inicializó correctamente o que hay un problema con la versión de rasterio que está utilizando.

    Dado que mencionó que recientemente intentó instalar rioxarray, es posible que haya causado algún conflicto con la instalación de rasterio. Para solucionar este problema, puede seguir los siguientes pasos:

    1. Verifique la versión de rasterio que está utilizando. Puede hacerlo ejecutando ‘import rasterio; print(rasterio.version)’ en su entorno de Python.
    2. Verifique si tiene varias versiones de rasterio instaladas en su entorno. Puede hacerlo ejecutando ‘conda list rasterio’ o ‘pip list | grep rasterio’ en su símbolo del sistema / terminal.

    3. Si tiene varias versiones de rasterio instaladas, intente desinstalar todas las versiones e instalar la última versión utilizando ‘conda install rasterio’ o ‘pip install rasterio’.

    4. Si solo tiene una versión de rasterio instalada, intente reinstalarla utilizando ‘conda install rasterio –force-reinstall’ o ‘pip install rasterio –force-reinstall’.

    5. Si ninguno de los pasos anteriores funciona, intente crear un nuevo entorno virtual e instalar rasterio en él para asegurarse de que no haya conflictos con otros paquetes.

    En cuanto al problema con rioxarray, puede valer la pena intentar instalarlo nuevamente utilizando ‘conda install rioxarray’ o ‘pip install rioxarray’. Asegúrese de activar el entorno virtual correcto antes de instalarlo.

Comments are closed.