sql - Pandas reset_index() 创建 level0 列

标签 sql python-3.x pandas duplicates multiple-columns

我在读一篇 CSV文件消除重复项并导出到数据库。

这里的问题是它正在创建一个名为 level0 的列。而不是重置索引。

这是我的代码

df = pd.read_csv('SampleData.csv', sep=';', encoding='latin1',  low_memory=False)
df_projects = df['External'].drop_duplicates()
df_projects = df_projects.to_frame()
df_projects.rename(columns={'External': 'name'}, inplace=True)
df_projects = df_projects.reset_index()

con = create_engine('sqlite:///db.sqlite3')
df_projects.to_sql("inventory_projects", con, index=True, if_exists='replace')

最佳答案

您需要添加参数 drop=True reset_index :

...
df_projects = df_projects.rename('name').to_frame()
df_projects = df_projects.reset_index(drop=True)
...

关于sql - Pandas reset_index() 创建 level0 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39616424/

相关文章:

mysql - 成对显示表的SQL查询

mysql - Golang - 为什么 SQL 占位符不起作用?

python - 使用 Cnn 和 Lstm 提取图像字幕生成器的特征?

python - 如何将自定义异常抛出到正在运行的任务中

python - 如何处理 pandas 中超出时间戳范围的日期?

sql - 如果不存在则创建 UDF(用户定义函数),如果存在则跳过它

mysql - 获得结果的更好方法

Python:为 csv.DictWriter 设置引号?

python - 在循环中更新一行,然后在下一次迭代中使用更新后的值

python - 无法在 Pandas 数据框中用零填充 NaN