[PYTHON] Excel-> pandas-> sqlite

Pour le lancer d'une feuille Excel dans SQL, vous devez installer le pilote ODBC et écrire vba régulièrement, mais python est facile.

sheet.PNG

↑ En supposant qu'une telle feuille est ouverte dans C: \ temp \ Book1.xlsx Il est facile de le lancer via des pandas. Vous pouvez également créer une base de données et une table en un seul coup avec to_sql sans créer de problème.

# -*- coding: utf-8 -*-
from xlwings import Workbook, Range
import pandas as pd
import pandas.io.sql as psql
import sqlite3

#Importer un classeur Excel déjà ouvert
wb = Workbook(r'C:\temp\Book1.xlsx')
#Capturez les données de A1 à la fin
data = Range('A1').table.value
#Convertir en trame de données pandas
df = pd.DataFrame(data[1:], columns=data[0])

with sqlite3.connect('fruit.db') as conn:
    psql.to_sql(df, 'fruit', conn)

cur = conn.execute('select * from fruit')
print(cur.fetchall())

Cette fois, j'ai utilisé xlwings pour lire l'Excel édité dynamiquement, mais s'il s'agit d'un fichier enregistré, vous pouvez le lire avec pd.read_excel.

Je pense que c'est probablement le plus simple (drapeau)

Recommended Posts

Excel-> pandas-> sqlite
Pandas
Exporter la trame de données pandas vers Excel
lecteur sqlite3
Mémo Pandas
Notions de base sur les pandas
Notes de pandas
Mémorandum de Pandas
Notions de base sur les pandas
[Easy Python] Lecture de fichiers Excel avec des pandas
Créer un bloc de données à partir d'Excel à l'aide de pandas
mémorandum pandas
mémo pandas
pandas SettingWithCopyWarning
[Python] Comment lire des fichiers Excel avec des pandas