我想将一些数据从数据帧存储到sqlite数据库中。我正在执行以下操作:
首先创建一个数据库:
conn = sqlite3.connect("mydatabase.db")
然后将表从数据框
df
添加到数据库:df.to_sql(table_name, conn,if_exists='append')
然后从数据库中查询表:
cur = conn.cursor()
cur.execute("SELECT * FROM table_name")
rows = cur.fetchall()
df2=pd.DataFrame(rows)
df2
没有原始公用名,但已重新索引为0、1、2、3等。如何保留原始数据框的列?
谢谢
最佳答案
试试这个:
df2 = pd.read_sql("SELECT * FROM table_name", conn)
一些颜色:
您的表很好,它有列,您可以使用cur.fetchall()获取值的元组列表,它没有列名的任何信息,所以熊猫只使用数字。
read_sql()
检查列名并为您完成关于pandas - 如何使用to_sql保留 Pandas 数据框列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47311385/