分享

我不是一般的肥熊猫,我是独一无二的肥熊猫

 godxiasad 2023-04-21 发布于北京

Python 数据处理工具包 Pandas 简介

如果是关注Python开发的同学,看到标题,可能已经猜到虾神想说啥了吧,没错,今天要给大家介绍的就说号称Python中使用最广泛的工具包“pandas”。

所谓的Pandas这个单词,让大家一度觉得这个工具是中国人写的,因为国宝嘛。国外最流弊的连锁中餐厅也叫做panda

小科普

panda连锁中餐厅,拥有2000多家分店、23000多名员工,开遍了全美47个州,一年就能狂赚百亿美元,碾压美国本土品牌“汉堡王”。截止2018年,panda的分店已遍布全美国,还在加拿大、墨西哥、日本、韩国、波多黎各、迪拜等国家和地区开设了分店。

panda experss的创始人程正昌祖籍浙江,其父程明才,是民国时期一流的浙江菜大厨,曾经给蒋介石掌过勺,可谓家学渊源,后来举家移民美国,开设了这家中餐厅。

好吧,实际上Pandas这个包与熊猫木有一点关系,二者名称相同,纯粹是巧合(或者作者故意碰瓷),因为pandas的全称叫做:powerful Python Data Analysis toolkit(强大的Python数据分析工具箱——好吧,这个名字还带形容词,够自恋的)

pandas在github上一共有2万5千多个star,在Python package里面,仅次于TensorFlow、Flask、django、kerasscikit-learn等几个超级火热的流行项目,位于第六位。

下面正式介绍一下pandas这个强大的工具包

本文不是pandas的入门培训,仅做基础介绍,网上pandas的入门教材非常多,大家可以自行了解。另外,文章后面有共享资料。

以前曾经讲过,编程语言已经进入了第四代,而第四代与第三代最大的区别,就是不在需要用人脑去模拟计算机的思维方式,而Python作为三代语言中的佼佼者,通过它强大的扩展包的能力,在所有的三代语言里面,最早通过各种包实现了四代语言的特性。

关于四代语言的,可以看二条和三条的推送,也可以通过下面链接跳转过去:

第四代编程语言篇

四代语言:DataFrame效率篇

比如numpy,又比如在numpy上面发展衍生出来的pandas。

下面我们看几个有意思的例子:

比如,我们想看看我国的家庭与人口和性别是有关系,那么通过Pandas,仅仅需要下面几行代码:

import pandas
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams['font.family'] = ['Arial Unicode MS']
pd = pandas.read_excel("http://www.stats.gov.cn/tjsj/pcsj/rkpc/6rp/excel/A0101a.xls")

pd.columns=["地区","户数","家庭户户数","集体户户数","人数合计","","","性别比",
"家庭户人数","家庭户男","家庭户女","家庭户性别比",
"集体户人数","集体户男","集体户女","集体户性别比","平均家庭户规模"]
pd2 = pd[6:]
pd2.reset_index(inplace=True,drop=True)

pd3 = pd2.drop("地区",1)
pd3 = pandas.DataFrame(pd3,dtype=int)
plt.figure(figsize=(12,9))
sns.heatmap(pd3.corr())

然后就可以得到下面这一张相关系数图: 

颜色越深的表示相关性越差,可以看见,相关性最弱的就说与性别比有关的——也就说说,家庭的多少,或者家庭中人数的多少(平均家庭户规模),与性别比没有啥关系。

从上面的代码可以看见,pandas确实说处理和分析数据的一个神器,那么这个神器如何学习呢?除了网上的教程以外,这里给大家推荐下面几份资料:

Pandas学习手册中文版:

官方学习课程的中文版,215页

pandas cookbook 中文版

pandas 指南,很全面的教程,387页。

pandas官方api文档(这个是鹰文滴)

最新的1.0.3版本官方文档——3071页,这也是我见过的最大的帮助文档了,打印出来可以装一整个箱子了……

获取方式非常简单,关注虾神公众号:

然后发送消息pandas即可获取云盘地址。

然后本文转发、点赞、打赏,就随缘了。

另外,预告一下,鉴于近期水文太多(水得虾神我都不好意思了),所以下周将更新一篇新版白话空间统计,敬请期待。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约