pandas与sqlalchemy交互实现科学计算

import pandas as pd
import numpy as np
from sqlalchemy import create_engine

#建立数据库引擎
    engine = create_engine('mysql+pymysql://root:[email protected]:3306/mymac')
    sql = 'select * from student'
    #建立dataframe对象
    df = pd.read_sql_query(sql,engine)

#建立dataframe对象
    df = pd.read_sql_query(sql,engine)
    print(df)
    #按照年龄正序
    # select * from student order by age asc |desc
    df = df.sort_values(['age','height'],ascending=False)
    print(df)
    #取年龄最小的学生
    # select * from student order by age limit 1
    dd = df.sort_values(['age']).head(1)
    print(dd)
    #求整个班的平均年龄 使用loc方法指定字段
    #select * from student where gender = 0 and age < (select avg(age) from student)
    avg_age = df.loc[df['gender'] == 0].age.mean()
    print(df.loc[(df['age']< avg_age) & (df['gender'] == 0)])

    #获取指定字段
    print(df.loc[ df['gender'] == 1,['id','name']])

#   将datafram写入数据表 表名,数据引擎,数据是否入库(不建议使用,因为键的表字段类型约束等需调整)
#   需安装openpyxl库
    # df.to_sql('student_copy',engine,index=False)
    #到出excel文件
    # df.to_excel('student.xlsx',index=False)

猜你喜欢

转载自www.cnblogs.com/xcsg/p/10482545.html