如何从sqlite创建pandas数据框

San*_*eev 2 python sqlite

我制作了以下程序,我正在从 sqlite 表中获取数据并想创建一个 Pandas 数据框。

import sqlite3 as lite
import pandas as pd
con=lite.connect('/Users/mac/Desktop/Python/Baye_stat/productiondisruption/PCI_meat.sqlite')
cur=con.cursor()

cur.execute("SELECT * from InmateLostHours")

losthours = cur.fetchall()
k=len(losthours)-1
jan=[]
feb=[]
march=[]
april=[]
may=[]
june=[]
july=[]
aug=[] 
sept=[]
october=[]
nov=[]
dec=[]
for i in range(0,k):
  may.append((losthours[i][3])/(losthours[i][15]))
  june.append((losthours[i][4])/(losthours[i][15]))
  july.append((losthours[i][5])/(losthours[i][15]))
  aug.append((losthours[i][6])/(losthours[i][15]))
  sept.append((losthours[i][7])/(losthours[i][15]))
  october.append((losthours[i][8])/(losthours[i][15]))
  nov.append((losthours[i][9])/(losthours[i][15]))
  dec.append((losthours[i][10])/(losthours[i][15]))
  jan.append((losthours[i][11])/(losthours[i][15]))
  feb.append((losthours[i][12])/(losthours[i][15]))
  march.append((losthours[i][13])/(losthours[i][15]))
  april.append((losthours[i][14])/(losthours[i][15]))

institutionhours=pd.DataFrame({
            'May' :[may],
            'June':[june],
            'July':[july],
            'August':[aug],
            'September':[sept],
            'October':[october],
            'November':[nov],
            'December':[dec],
            'January':[jan],
            'Feburary':[feb],
            'March':[march],
            'April':[april]
            })
Run Code Online (Sandbox Code Playgroud)

我想要一个大小为 (16, 12) 的干净数据框,但我在此处输入图像描述

Dem*_*nos 5

使用熊猫时,这变得非常容易。

import pandas as pd
import sqlite3

con = sqlite3.connect('/Users/mac/Desktop/Python/Baye_stat/productiondisruption/PCI_meat.sqlite')

df = pd.read_sql(<your query here>, con)
Run Code Online (Sandbox Code Playgroud)