在利用python进行数据分析时,有时候我们会直接连接数据库,将需要分析的数据导入到python中。如果直接导入到python中,数据格式为tuple,不便于后续的分析。下面为大家介绍两种方法,能够将利用sql提取的数据转换为dataframe。
def get_df_from_db(sql):
cursor = connection.cursor()
cursor.execute(sql)
data = cursor.fetchall()
columnDes = cursor.description #获取连接对象的描述信息
columnNames = [columnDes[i][0] for i in range(len(columnDes))]
df = pd.DataFrame([list(i) for i in data],columns=columnNames)
return df
def get_df_from_db_1(sql):
return pd.read_sql(sql,connection)
其中,connection为连接数据库的参数
connection = MySQLdb.connect(host='*****'
, port=****
, db='****'
, user='****'
, passwd='****'
, charset='utf8')