将 Python 连接到 Oracle - 输入包含 NaN 无穷大或对于 dtype('float64') 错误的值太大



我是Oracle和Python的新手,我将我的Python连接到Oracle。我在我的Oracle数据库上有这个表,我想写一个简单的查询来查看我的结果,但它给了我这个错误:

Input contains NaN, infinity or a value too large for dtype('float64').

我代码:

SQL_Query2 = pd.read_sql_query('''select Province_name, cnt from Provincepartnercnt''' , conn)
x_test = pd.DataFrame(SQL_Query2, columns=['Province_name','cnt'])
SQL_Query = pd.read_sql_query('''select Province_name, cnt from Provincepartnercnt''' , conn)
x_train = pd.DataFrame(SQL_Query, columns=['Province_name','cnt'])
myKNN = KNeighborsClassifier(n_neighbors = 1)
myKNN.fit(x_test, x_train)

我的数据类型也不是float:我的一个列是在VARCHAR2(150 BYTE),另一个是在NUMBER(38,0)。此外,我必须提到,我的非行是空或其他任何东西。

我找到了一种无需使用该查询即可插入数据的方法。也许问题在于使用sklearn。(我只是简单地使用这段代码)

我代码:

cursor = conn.cursor()
query= cursor.execute("select ostan_name, cnt from ostanpartnercnt")
for row in re:
print(row)

相关内容

最新更新