当我尝试将SQL Tabel加载到DataFrame中时,显示了数据帧中字符串的NAN值



我在SQL中有一个表,我尝试将该表数据提取到一个 数据框架,当我尝试打印数据帧时,它正在显示数字 完美地进入字符串值时,它显示为" nan"

import pymysql``
import pandas as pd
from pandas import DataFrame
storage = input("Enter your database name :")
table = input("Enter your table name")
db = pymysql.connect(host='localhost', database=storage, user='', 
passwd='')
cursor = db.cursor()
print("Connected to " + storage)
query = pd.read_sql_query('SELECT * FROM ' +table , db)
df = DataFrame(query, columns=['First_name', 'Last_name ', 'Age', 'SEX', 
'Income', 'Cellno', 'Id', 'Aadhar'])
print(df)

而不是打印值,它是为列打印nan(first_name,, last_name,年龄,收入(

我已经尽力解决这个问题,但没有得到任何结果

storage = input("Enter your database name :")
table = input("Enter your table name")
db = pymysql.connect(host='localhost', database=storage, user='', 
passwd='')
cursor = db.cursor()
print("Connected to " + storage)
query = pd.read_sql_query('SELECT * FROM ' +table , db)
df = DataFrame(query, columns=['First_name', 'Last_name ', 'Age', 'SEX', 
'Income', 'Cellno', 'Id', 'Aadhar'])
print(df)

而不是打印值,它仍在打印列的nan(first_name, last_name,年龄,收入,(

如果使用另一个软件包适合您,请尝试psycopg2和此模式

import pandas as pd
import psycopg2
host = 'host_name'
database = 'database_name'
username = 'username'
password = 'password'
storage = input("Enter your database name :")
table = input("Enter your table name")
    with psycopg2.connect(f"host='{host}' 
                            dbname='{database}' 
                            user='{username}' 
                            password='{password}'") as connection:
        sqlQuery = """
SELECT * FROM %s' %(table)
"""
        data = pd.read_sql(sqlQuery, connection)

最新更新