【数据分析】pandas增删改查!sql2pandas方法手册

机器学习初学者

共 1183字,需浏览 3分钟

 ·

2021-01-22 00:36

数据分析

Author:louwill

Machine Learning Lab

     

作为一名数据分析师or算法工程师,利用SQL熟练的取数是一项必备的基础能力。除了SQL以外,Python的pandas也为我们提供了SQL的大多数功能。笔者对SQL和pandas相关数据操作的对照功能进行了整理。可以说是非常实用了。


标准的SQL查询语法如下:

select (distinct) [字段]from [表1join [表2] on [匹配字段]where [过滤条件]group by [字段]having [过滤条件]order by [字段] desclimit [个数] 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

往期精彩回顾





本站知识星球“黄博的机器学习圈子”(92416895)

本站qq群704220115。

加入微信群请扫码:


浏览 35
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报