[英]How to convert SQL Oracle Database into a Pandas DataFrame?
我正在嘗試將 Oracle SQL 數據庫導入 python,以便我可以聚合/分析數據。 Pandas 對這項任務非常有用。 但是每當我嘗試使用我的代碼時,它就會掛起並且不輸出任何內容。 我不確定是因為我使用的是 cx oracle 包,然后使用了 Pandas 包?
import cx_Oracle as cxo
import pandas as pd
dsn=cxo.makedsn(
'host.net',
'1111',
service_name='servicename'
)
conn=cxo.connect(
user='Username',
password='password',
dsn=dsn)
c=conn.cursor()
a=c.execute("SELECT * FROM data WHERE date like '%20%'")
conn.close
df=pd.DataFrame(a)
head(df)
但是,當我使用下面的代碼時,它會打印出我要查找的數據。 我需要將此數據轉換為熊貓數據框,
for row in c: print(row)
conn.close()
我對 python 很陌生,所以任何幫助都將不勝感激!!
要將 cx_Oracle 游標轉換為數據幀,您可以使用以下代碼。
with conn.cursor() as cursor:
cursor.execute("SELECT * FROM data WHERE date like '%20%'")
from pandas import DataFrame
df = DataFrame(cursor.fetchall())
df.columns = [x[0] for x in cursor.description]
print("I got %d lines " % len(df))
注意我使用光標作為上下文管理器。 所以它會在塊的末尾自動關閉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.