项目    MySQL的安装以及使用
课程班级博客链接 20级数据班(本)
这个作业要求链接 作业要求
博客名称 2003031118—李伟—Python数据分析第七周作业—MySQL的安装以及使用
要求 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)。

1.安装好MySQL,连接上Navicat。

2.完成课本练习(代码4-1~3/4-9~31)。(4-1至4-3是一个,4-9至4-11是一个,4-12至4-31是一个)说明:4-12至4-31分开运行,最后有总的

代码4-1至代码4-3

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 formlist=pd.read_sql_query('show tables',con=engine)
8 print('testdb数据表清单为:","\n ',formlist)
9
10 detail1=pd.read_sql_table('meal_order_detail1',con=engine)
11 print("使用read_sql_query读取清单的长度为:",len(detail1))
12
13 detail2=pd.read_sql('select*from meal_order_detail2',con=engine)
14 print("使用read_sql函数+SQL语句读取的订单详情表长度为:",len(detail2))
15
16 detail3=pd.read_sql('meal_order_detail3',con=engine)
17 print('使用read_sql函数+SQL语句读取的订单详情表长度为:',len(detail3))
18
19 detail1.to_sql('test1',con=engine,index=False,if_exists='replace')
20 formlist1=pd.read_sql_query('show tables',con=engine)
21 print('新增一个表格后,testdb数据表清单为:“,”\n',formlist1)

 代码4-9至代码4-11

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 import pandas as pd
4 order1=pd.read_sql_table('meal_order_detail1',con=engine)
5 print("订单详情表1的长度为:",len(order1))
6 order2=pd.read_sql_table('meal_order_detail2',con=engine)
7 print("订单详情表2的长度为:",len(order2))
8 order3=pd.read_sql_table('meal_order_detail3',con=engine)
9 print("订单详情表3的长度为:",len(order3))
10 order4=pd.read_table('D:/桌面/第四章/meal_order_info.csv',sep=",",encoding='gbk')
11 print('订单信息表的长度为:',len(order4))
12 user=pd.read_excel('D:/桌面/第四章/users.xlsx')
13 print('客户信息表的长度为:',len(user))

 代码4-12至4-14

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8 print('订单详情表的索引为:',detail.index)
9 print('订单详情表的所有值为:“,”\n',detail.values)
10 print('订单详情表的列名为:“,”\n',detail.columns)
11 print('订单详情表的数据类型为:“,”\n',detail.dtypes)
12 print('订单详情表的元素个数为:“,”\n',detail.size)
13 print('订单详情表的维度数为:“,”\n',detail.ndim)
14 print('订单详情表的形状为:“,”\n',detail.shape)
15 print('订单详情表转置前形状为:“,”\n',detail.shape)
16 print('订单详情表转置后形状为:“,”\n',detail.T.shape)

代码4-15至4-19

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8
9 order_id=detail['order_id']
10 print("订单详情表中的order_id的形状为:','\n",order_id.shape)
11 dishes_name=detail.dishes_name
12 print('订单详情表中的dishes_name的形状为:',dishes_name.shape)
13 dishes_name5=detail['dishes_name'][:5]
14 print('订单详情表中的dishes_name前5个的元素为:',dishes_name5)
15 orderDish=detail[['order_id','dishes_name']][:5]
16 print("订单详情表中的order_id和dishes_name前5个的元素为:","\n",orderDish)
17 order5=detail[:][1:6]
18 print('订单详情表的1——6行元素为:","\n',order5)

 代码4-20至4-23

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8 print('订单详情表中前5行数据为:","\n',detail.head())
9 print('订单详情表中后5行数据为:","\n',detail.tail())
10
11 dishes_name1=detail.loc[:,'dishes_name']
12 print('使用loc提取dishes_name列的size为:',dishes_name1.size)
13 dishes_name2=detail.iloc[:,3]
14 print('使用loc提取第3列的size为:',dishes_name2.size)
15
16 orderDish1=detail.loc[:,['order_id','dishes_name']]
17 print('使用loc提取order_id和dishes_name列的size为:',orderDish1.size)
18 orderDish2=detail.iloc[:,[1,3]]
19 print('使用iloc提取第1列和第3列的size为:',orderDish2.size)
20 print('列名为order_id和dishes_name的行名为3的数据为:\n',detail.loc[3,['order_id','dishes_name']])
21 print('列名为order_id和dishes_name的行名为2,3,4,5,6的数据为:\n',detail.loc[2:6,['order_id','dishes_name']])
22 print('列位置为1和3,行位置为3的数据为:\n',detail.iloc[3,[1,3]])
23 print('列位置为1和3,行位置为2,3,4,5,6的数据为:\n',detail.iloc[2:7,[1,3]])

 代码4-24至4-27

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8
9 print('detail中order为458的dishes_name为;\n',detail.loc[detail['order_id']=='458',['order_id','dishes_name']])
10 print('detail中order_id为458的1、5列数据为:\n',detail.iloc[(detail['order_id']=='458').values,[1,5]])
11 print('列名为dishes_name行名为2,3,4,5,6的数据为:\n',detail.loc[2:6,'dishes_name'])
12 print('列位置为5,行位置为2-6的数据为:\n',detail.iloc[2:6,5])
13 #print('列位置为5,行名为2-6的数据为:","\n',detail.ix[2:6,5])
14 detail.loc[detail['order_id']=='458','order_id']='45800'
15 print('更改后detail中order_id为458的order_id为:\n',detail.loc[detail['order_id']=='458','order_id'])
16 print('更改后detail中order_id为45800的order_id为:\n',detail.loc[detail['order_id']=='45800','order_id'])

 代码4-28至4-31

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8
9 detail['payment']=detail['counts']*detail['amounts']
10 print('detail新增列payment的前5行为:","\n',detail['payment'].head())
11 detail['pay_way']='现金支付'
12 print('detail新增列pay-way的前5行为;","\n',detail['pay_way'].head())
13 print('删除pay_way前detail的列索引为;","\n',detail.columns)
14 detail.drop(labels='pay_way',axis=1,inplace=True)
15 print('删除pay_way后detail的列索引为:","\n',detail.columns)
16 print('删除1-10行前detail的长度为:',len(detail))
17 detail.drop(labels=range(1,11),axis=0,inplace=True)
18 print('删除1-10行后detail的长度为:',len(detail))

代码 4-12至4-31

 1 from sqlalchemy import create_engine
2 engine=create_engine("mysql+pymysql://root:root@127.0.0.1:3306/testdb?charset=utf8")
3 print(engine)
4
5 import pandas as pd
6 #使用read_sql_query查看testdb中的数据表书目
7 detail=pd.read_sql_table('meal_order_detail1',con=engine)
8 print('订单详情表的索引为:',detail.index)
9 print('订单详情表的所有值为:“,”\n',detail.values)
10 print('订单详情表的列名为:“,”\n',detail.columns)
11 print('订单详情表的数据类型为:“,”\n',detail.dtypes)
12 print('订单详情表的元素个数为:“,”\n',detail.size)
13 print('订单详情表的维度数为:“,”\n',detail.ndim)
14 print('订单详情表的形状为:“,”\n',detail.shape)
15 print('订单详情表转置前形状为:“,”\n',detail.shape)
16 print('订单详情表转置后形状为:“,”\n',detail.T.shape)
17
18 order_id=detail['order_id']
19 print("订单详情表中的order_id的形状为:','\n",order_id.shape)
20 dishes_name=detail.dishes_name
21 print('订单详情表中的dishes_name的形状为:',dishes_name.shape)
22 dishes_name5=detail['dishes_name'][:5]
23 print('订单详情表中的dishes_name前5个的元素为:',dishes_name5)
24 orderDish=detail[['order_id','dishes_name']][:5]
25 print("订单详情表中的order_id和dishes_name前5个的元素为:","\n",orderDish)
26 order5=detail[:][1:6]
27 print('订单详情表的1——6行元素为:","\n',order5)
28
29 print('订单详情表中前5行数据为:","\n',detail.head())
30 print('订单详情表中后5行数据为:","\n',detail.tail())
31
32 dishes_name1=detail.loc[:,'dishes_name']
33 print('使用loc提取dishes_name列的size为:',dishes_name1.size)
34 dishes_name2=detail.iloc[:,3]
35 print('使用loc提取第3列的size为:',dishes_name2.size)
36
37 orderDish1=detail.loc[:,['order_id','dishes_name']]
38 print('使用loc提取order_id和dishes_name列的size为:',orderDish1.size)
39 orderDish2=detail.iloc[:,[1,3]]
40 print('使用iloc提取第1列和第3列的size为:',orderDish2.size)
41 print('列名为order_id和dishes_name的行名为3的数据为:\n',detail.loc[3,['order_id','dishes_name']])
42 print('列名为order_id和dishes_name的行名为2,3,4,5,6的数据为:\n',detail.loc[2:6,['order_id','dishes_name']])
43 print('列位置为1和3,行位置为3的数据为:\n',detail.iloc[3,[1,3]])
44 print('列位置为1和3,行位置为2,3,4,5,6的数据为:\n',detail.iloc[2:7,[1,3]])
45
46 print('detail中order为458的dishes_name为;\n',detail.loc[detail['order_id']=='458',['order_id','dishes_name']])
47 print('detail中order_id为458的1、5列数据为:\n',detail.iloc[(detail['order_id']=='458').values,[1,5]])
48 print('列名为dishes_name行名为2,3,4,5,6的数据为:\n',detail.loc[2:6,'dishes_name'])
49 print('列位置为5,行位置为2-6的数据为:\n',detail.iloc[2:6,5])
50 #print('列位置为5,行名为2-6的数据为:","\n',detail.ix[2:6,5])
51 detail.loc[detail['order_id']=='458','order_id']='45800'
52 print('更改后detail中order_id为458的order_id为:\n',detail.loc[detail['order_id']=='458','order_id'])
53 print('更改后detail中order_id为45800的order_id为:\n',detail.loc[detail['order_id']=='45800','order_id'])
54
55 detail['payment']=detail['counts']*detail['amounts']
56 print('detail新增列payment的前5行为:","\n',detail['payment'].head())
57 detail['pay_way']='现金支付'
58 print('detail新增列pay-way的前5行为;","\n',detail['pay_way'].head())
59 print('删除pay_way前detail的列索引为;","\n',detail.columns)
60 detail.drop(labels='pay_way',axis=1,inplace=True)
61 print('删除pay_way后detail的列索引为:","\n',detail.columns)
62 print('删除1-10行前detail的长度为:',len(detail))
63 detail.drop(labels=range(1,11),axis=0,inplace=True)
64 print('删除1-10行后detail的长度为:',len(detail))

2003031118—李伟—Python数据分析第七周作业—MySQL的安装以及使用的更多相关文章

  1. 2003031121——浦娟——Python数据分析第七周作业——MySQL的安装及使用

    项目 要求 课程班级博客链接 20级数据班(本) 作业要求链接 Python第七周作业 博客名称 2003031121--浦娟--Python数据分析第七周作业--MySQL的安装及使用 要求 每道题 ...

  2. 2003031121-浦娟-python数据分析第三周作业-第一次作业

    项目 内容 课程班级博客链接 https://edu.cnblogs.com/campus/pexy/20sj 作业链接 https://edu.cnblogs.com/campus/pexy/20s ...

  3. 2017-2018-1 我爱学Java 第六七周 作业

    团队六七周作业 完善版需求规格说明书 制定团队编码规范 数据库设计 后端架构设计 TODOList 参考资料 完善版需求规格说明书 <需求规格说明书>初稿不足之处: 1.开发工具写错 2. ...

  4. 2018-2019-1 20189221 《Linux内核原理与分析》第七周作业

    2018-2019-1 20189221 <Linux内核原理与分析>第七周作业 实验六 分析Linux内核创建一个新进程的过程 代码分析 task_struct: struct task ...

  5. 2017-2018-1 JAVA实验站 第六、七周作业

    2017-2018-1 JAVA实验站 第六.七周作业 详情请见团队博客

  6. 2017-2018-1 JaWorld 第六、七周作业

    2017-2018-1 JaWorld 第六.七周作业 修改需求规格说明书 上次的<需求规格说明书>初稿有哪些不足? 王译潇同学回答:   1. 引言和目的性考虑的不是很周全.   2. ...

  7. 2017-2018-1 20179205《Linux内核原理与设计》第七周作业

    <Linux内核原理与设计>第七周作业 视频学习及操作分析 创建一个新进程在内核中的执行过程 fork.vfork和clone三个系统调用都可以创建一个新进程,而且都是通过调用do_for ...

  8. 2019-2020-1 20199325《Linux内核原理与分析》第七周作业

    第七周作业 1.进程描述符task_struct数据结构(一) 为了管理进程,内核必须对每个进程进行清晰的描述,进程描述符提供了内核所需了解的进程信息. struct task_struct数据结构很 ...

  9. 2019-2020-1 20199329《Linux内核原理与分析》第七周作业

    <Linux内核原理与分析>第七周作业 一.本周内容概述: 对Linux系统如何创建一个新进程进行追踪 分析Linux内核创建一个新进程的过程 二.本周学习内容: 1.学习进程的描述 操作 ...

  10. 2020-2021-1 20209307《Linux内核原理与分析》第七周作业

    这个作业属于哪个课程 <2020-2021-1Linux内核原理与分析)> 这个作业要求在哪里 <2020-2021-1Linux内核原理与分析第七周作业> 这个作业的目标 & ...

随机推荐

  1. 内容类型框架-ContentType 模型

    参考Django官方文档 ContentTypeManager¶ classContentTypeManager¶ ContentType 还有一个自定义管理器, ContentTypeManager ...

  2. Plus 3.0 (ThinkSNS+)centos8.5+php7.4在阿里云部署过程

    参考:https://zhiyicx.github.io/ts-api-docs/guide/installation/using-nginx-and-fpm-publish-website.html ...

  3. JSON::ParserError - 416: unexpected token at

    rm -rf ~/.cocoapods/repos/Spec_Lockandrm -rf ~/.cocoapods/repos/trunk/

  4. 记D365开发的最佳实践

    前端JS 不同的需求应该划分模块,以便日后修改,也是为了职责分离,模块分离,日后如果想分离到单独的JS文件里面也是比较方便: 对于公共的查询函数,应该做缓存,优先使用sessionStorage. 多 ...

  5. 火爆全球的“饺子皮”3D手办原来是这样做的!关键时刻少不了远程控制软件!

    2022年卡塔尔世界杯的吉祥物最近在全球火出圈了,并且喜提中国网友给予的爱称"饺子皮"."馄饨皮"(官方名字:拉伊卜,意为"技艺高超的球员" ...

  6. 淘淘商城项目技术点-9:使用FTPClient及FtpUtil工具类将图片上传至ngnix图片服务器

    package com.taotao.controller; import com.taotao.common.utils.FtpUtil; import org.apache.commons.net ...

  7. uniapp 复制 粘贴,系统剪贴板

    uniapp里不叫复制粘贴,叫系统剪贴板uni.setClipboardData({ data: this.href, success: () => { uni.hideToast(); thi ...

  8. Vuex学习记录篇之王阿姨畅谈Vuex

    Vuex是干什么的,相信很多人和我一样刚开始不大清楚 大家都知道Vue实现组件通信(传参)有很多方式所谓通信就是指数据共享,父子通信,兄弟通信但是如果要频繁实现数据共享,那么以上的方法就有点力不从心了 ...

  9. KEIL5中C/C++优化等级问题

    知乎上有篇详解   https://zhuanlan.zhihu.com/p/24402180 强烈推荐 C/C++的优化等级会对程序产生 不定性的影响,至于选择哪种优化等级必须从 现有的程序分析才行 ...

  10. 【剑指Offer】【树】二叉树的镜像

    题目:操作给定的二叉树,将其变换为源二叉树的镜像. 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 1 ...