【发布时间】:2017-10-18 18:10:47
【问题描述】:
我有大量 .csv 文件,我想将它们放入 sqlite 数据库。大多数文件包含相同的列名,但有些文件有额外的列。
我尝试过的代码是(改为通用的):
import os
import pandas as pd
import sqlite3
conn = sqlite3.connect('test.db')
cur = conn.cursor()
os.chdir(dir)
for file in os.listdir(dir):
df = pd.read_csv(file)
df.to_sql('X', conn, if_exists = 'append')
当遇到包含不在表 X 中的列的文件时,我收到错误:
OperationalError: table X has no column named ColumnZ
如何更改我的代码以将新列附加到表中并用NaN 填充先前的行?
【问题讨论】:
标签: python-3.x sqlite pandas operationalerror