Cuando ejecuto el programa, Pandas da 'Advertencia futura' como se muestra a continuación cada vez.
D:\Python\lib\site-packages\pandas\core\frame.py:3581: FutureWarning: rename with inplace=True will return None from pandas 0.11 onward
" from pandas 0.11 onward", FutureWarning)
Recibí el mensaje, pero solo quiero evitar que Pandas muestre dicho mensaje una y otra vez, ¿hay algún parámetro de construcción que pueda configurar para que Pandas no muestre la 'Advertencia futura'?
warnings....ignore
antes delimport pandas...
para hacerFutureWarning
que se ignore.La respuesta de @ bdiamante puede ayudarlo solo parcialmente. Si aún recibe un mensaje después de haber suprimido las advertencias, es porque la
pandas
propia biblioteca está imprimiendo el mensaje. No hay mucho que pueda hacer al respecto a menos que edite el código fuente de Pandas usted mismo. Tal vez haya una opción internamente para suprimirlos, o una forma de anular cosas, pero no pude encontrar una.Para aquellos que necesitan saber por qué ...
Suponga que desea garantizar un entorno de trabajo limpio. En la parte superior de tu guión, pones
pd.reset_option('all')
. Con Pandas 0.23.4, obtienes lo siguiente:Siguiendo los consejos de @ bdiamante, usa la
warnings
biblioteca. Ahora, fiel a su palabra, las advertencias se han eliminado. Sin embargo, quedan varios mensajes molestos:De hecho, deshabilitar todas las advertencias produce el mismo resultado:
En el sentido de biblioteca estándar, estas no son verdaderas advertencias . Pandas implementa su propio sistema de advertencias. La ejecución
grep -rn
de los mensajes de advertencia muestra que elpandas
sistema de advertencia está implementado encore/config_init.py
:Seguir persiguiendo demuestra que no tengo tiempo para esto. Y probablemente tú tampoco. ¡Con suerte, esto le evitará caer por la madriguera del conejo o tal vez inspire a alguien a descubrir cómo suprimir realmente estos mensajes!
fuente
Las advertencias son molestas. Como se mencionó en otras respuestas, puede suprimirlas usando:
Pero si desea manejarlos uno por uno y está administrando una base de código más grande, será difícil encontrar la línea de código que está causando la advertencia. Dado que las advertencias, a diferencia de los errores, no vienen con rastreo de código. Para rastrear advertencias como errores, puede escribir esto en la parte superior del código:
Pero si el código base es más grande y está importando un montón de otras bibliotecas / paquetes, todo tipo de advertencias comenzarán a aparecer como errores. Para generar solo cierto tipo de advertencias (en su caso, FutureWarning) como error, puede escribir:
fuente