前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >增删改查!sql2pandas方法手册

增删改查!sql2pandas方法手册

作者头像
石晓文
发布2019-10-28 17:24:24
6170
发布2019-10-28 17:24:24
举报
文章被收录于专栏:小小挖掘机小小挖掘机

数据分析

Author:louwill

Machine Learning Lab

作为一名数据分析师,利用SQL熟练的取数是一项必备的基础能力。除了SQL以外,Python的pandas也为我们提供了SQL的大多数功能。自从从事算法之后就很少写SQL了,今天在整理印象笔记时趁机复习了一下,也花了点时间把SQL中主要的增删改查方法用pandas对应实现一遍。可以说是非常实用了。

标准的SQL查询语法如下:

代码语言:javascript
复制
select (distinct) [字段]
from [表1] join [表2] on [匹配字段]
where [过滤条件]
group by [字段]
having [过滤条件]
order by [字段] desc
limit [个数] offset [个数]

我们以2018-19赛季部分NBA超巨的数据为例进行说明。该数据在pandas和MySQL中分别样式分别如下:

SQL的增删改查最主要的还是查询方法。我们先从查询方法开始。

select:选择球员、球队和场均得分三列:

distinct: 查看这些球员都有哪几种球场位置:

count:统计样本量

分类值统计

连续值描述性统计

where

单条件:查找属于得分后卫的球员:

多条件:查找属于得分后卫且得分大于27分的球员:

in/not in 查找:

order by 排序语句:

对球员得分进行排序:

limit/offset语句:

对球员得分排序后取前三或者第二到第四

group by语句:

求每个位置球员的平均得分并降序排序:

having子句:

求每个位置球员的平均得分并筛选大于26分的记录:

多表联立查询:inner join/outer(left right) join/union

给出新表如下:

inner join

left join:

right join:

union:

主要的查询部分对照完了之后,我们再来看SQL和pandas中的增删改方法。

SQL中创建表、修改表、插入表和删除表的语句如下表所示:

上述四种方法与之对应的pandas写法如下:

参考资料:

https://pandas.pydata.org/pandas-docs/stable/getting_started/comparison/comparison_with_sql.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小小挖掘机 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档