我必须使用sqlAlchemy导入csv数据到sql中。csv有到列(x,y),但我需要在sql数据库中添加第三列(delta_y)来存储处理过的数据。
使用下面的代码,它将csv文件读入sql数据库,但并没有在数据库中创建实际的空列。是否有一个平滑的方法来继承类中Map出来的内容?
from sqlalchemy import Column, Integer, Float, ForeignKey
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import create_engine, update
engine = create_engine('sqlite:///hausarbeit_db.sqlite3', echo=True)
Base = declarative_base()
class Test(Base):
__tablename__ = "test"
id = Column(Integer, primary_key=True)
x = Column(Float)
y = Column(Float)
delta_y = Column(Float)
Base.metadata.create_all(engine)
file_name = 'Beispiel-Datensaetze//test.csv'
df = pd.read_csv(file_name)
df.to_sql('test', con=engine, index_label="id", if_exists='replace')
TEST = Base.metadata.tables['test']
我也很高兴听到关于上面代码的任何其他提示或技巧。
谢谢!
1条答案
按热度按时间0sgqnhkj1#
你不能在从csv阅读后在数据框中添加一个新的空列吗