您的位置:首页 > 大数据 > 人工智能

人工智能-pands数据框架基本操作 以及查询sql生成excel表格

2019-03-06 17:15 274 查看
版权声明:禁止盗版! https://blog.csdn.net/weixin_44266650/article/details/88244222
#导包
import os
import sys

脚本式调用Django

#将脚本所在工程添加到环境变量
sys.path.append('../../mymacwjy')
#将项目路劲添加到系统搜寻路径
os.environ['DJANGO_SETTINGS_MODULE'] = 'mymacwjy.settings'

#导入django模块
import django

#导入科学计算
import numpy as np
import pandas as pd

#导入sqlalchemy
from sqlalchemy import create_engine

#加载项目配置 setup安装
django.setup()

#加载数据类 import 导入数据类名为Student
from myapp.models import Student

pands数据框架基本操作

if __name__ == "__main__":

#建立数据库引擎
engine = create_engine('mysql+pymysql://root:mysql@localhost:3306/mymac')
#写一条sql
sql = ' select id,name,age,gender from student '
#建立一个数据库
df = pd.read_sql_query(sql,engine)
print(df)

# #按年龄正序 sort_values()方法是按字段排序
# # sql语句 select * from student order by age asc | desc
# df = df.sort_values(['age'],ascending=False)
# print(df)

# #取年龄最小的学生 head(1) 只取一个
# df = df.sort_values(["age"]).head(1)
# print(df)

# #使用mean()方法0 1 是代表gender 求所有人的平均年龄 使用loc[] 方法指定字段
# print(df.mean())
# print(df.mean(0))
# print(df.mean(1))

# #求小于全部平均年龄的女女生
# #sql语句  select * from student where gender = 0 and age < (select avg(age) from student where gender = 0)
# avg_age = df.loc[df['gender'] == 0].age.mean()
# print(df.loc[ (df['age'] < avg_age) & (df['gender'] == 0) ])

##取全班的平均年龄
# print(df.age.mean())

##取全班的年龄总和
# print(df.age.sum())

# #取男生的年龄求和
# print(df.loc[df['gender']==1].age.sum())

# #取全班年龄最小的 min() max()
# print(df.age.min())

# #使用或者 | 查询
# print(df.loc[ (df['gender'] == 1) | (df['gender'] == 0 ) ])

# #全班人数
# print(df.id.count())

# #排除法
# print(df.loc[ (df['gender'] != 0) & (df['gender'] != 1) ])

# #修改操作 loc[] 第一个参数是第几行 第二个参数是字段
# df.loc[1,'gender'] = 0
# df.loc[0,'age'] = 20
# print(df)

# #取单值指定字段 nplist[2,3] nplist[2][3]
# print(df.loc[2,'name'])

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

#将dataframe 写入数据表 第一个参数表名 第二个参数 数据可引擎engine 第三个参数 索引是否入库
# df.to_sql('student_copy',engine,index=False)

查询sql生成excel表格

#导出excel 文件
# df.to_excel('student.xlsx',index=False)
# print(Student.objects.all())
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: