隐藏Pandas警告:SQLAlchemy

wvt8vs2t  于 2022-12-16  发布在  其他
关注(0)|答案(3)|浏览(1288)

我想隐藏此警告UserWarning: pandas only support SQLAlchemy connectable(engine/connection) ordatabase string URI or sqlite3 DBAPI2 connectionother DBAPI2 objects are not tested, please consider using SQLAlchemy,但已尝试

import warnings
warnings.simplefilter(action='ignore', category=UserWarning)

import pandas

但警告仍然显示。
我的python脚本从数据库读取数据,我使用pandas.read_sql进行SQL查询,使用psycopg2进行数据库连接。
我还想知道哪一行触发了警告。

jecbmhm3

jecbmhm31#

看起来我无法禁用panda警告,所以我使用SQLAlchemy(因为警告消息希望我这样做) Package psycopg2连接。
我按照这里的指示:用于psycopg2文档的SQLAlchemy
举个简单的例子:

import psycopg2
import sqlalchemy
import pandas as pd

conn = sqlalchemy.create_engine(f"postgresql+psycopg2://{user}:{pw}@{host}:{port}/{db}")

query = "select count(*) from my_table"

pd.read_sql(query, conn)

警告不再触发。

bvuwiixz

bvuwiixz2#

你现在过滤的警告是FutureWarning类型的警告。你收到的警告是UserWarning类型的,所以你应该把警告类别改为UserWarning。我希望this能回答你关于为什么Pandas发出那个警告的问题。

qyzbxkaa

qyzbxkaa3#

使用以下方法对我来说效果很好:

import warnings

warnings.filterwarnings('ignore').

我正在使用Pandas与pyodbc和以前得到同样的警告。

相关问题