为什么我不能在Python-Flask中将Pandas与attribut fetchall一起使用

时间:2019-03-19 08:48:20

标签: python pandas flask

我正在使用带有Flask的Python 3.5,Flaskext库与db连接 我使用YSC库对数据库中的数据进行规范化

在这种情况下,我想显示数据库中表的查询规范化结果

这是app.py中的代码

pandas

这是normalisasi.html页面中代码的一部分

@app.route('/normalisasi')
def normalisasi():
    connection = mysql.connect()
    df = pd.read_sql_query("SELECT rumah_tangga, niaga_kecil, niaga_besar, sosial_umum, sosial_khusus, pemerintah, tnipolri, industri_kecil, industri_besar, target FROM tb_dataset", connection);
    normalisasi = (df - df.min()) / (df.max() - df.min())*0.8+0.1
    data = pd.fetchall()

    return render_template('normalisasi.html', data = data)

当我打开页面时,结果是这样的

The result in browser

但是在控制台中可以使用

The result in console

如何解决此问题,请帮助我

1 个答案:

答案 0 :(得分:0)

据我所知fetchall()根本不是pandas方法,而是数据库游标上的方法。在控制台中运行时,您很可能不会执行相同的代码。

您也没有使用dfnormalisasi变量。

通常一个人会做类似的事情:

cursor = connection.cursor()
cursor.execute(query)
rows = cursor.fetchall()
df = pd.DataFrame(rows)