01写在前面
大家好,我是阳哥,欢迎来到「Python数据之道」。
本次是《图解Pandas》系列图文内容的 第 05 篇,主要介绍 Pandas 中常见的数据运算
。
本文是付费阅读文章,付费阅读内容包括《图解Pandas》图文干货内容、可以在电脑端观看的视频以及配套的源代码等。
此外,为避免各种不必要的麻烦,微信没有退款机制,付费前请谨慎。
Pandas 是 Python数据分析中用的最多的工具,为了大家能够更好地学习 Pandas,阳哥开始制作一系列 《图解Pandas》 的内容。
《图解Pandas》 最主要的目标,是以动态图片、视频等方式呈现,拆解 Pandas 在数据处理过程中的主要知识点,以便大家能进一步了解 Pandas 的使用,形象地介绍 Pandas,进而使大家喜欢上 Pandas 这个得心应手的工具。
《图解Pandas》图文专题,最新的内容可以点击下面的图片进行查看。
![c886b76494083b9ced611904f5265ee3.png](https://i-blog.csdnimg.cn/blog_migrate/92eed883a687dff69082ed0dc38d2671.png)
在本文编写时,《图解Pandas》系列已发布的图文如下:
本次主要介绍 Pandas 中常见的数据运算
,内容框架如下:
![6c20463a8a74c141de5da69398c9d8dd.png](https://i-blog.csdnimg.cn/blog_migrate/6c6f61da69556b806b4abe8baeaf65e5.png)
在微信视频号「Python数据之道」中发布的对应视频编号为 006
至 008
,大家可以前往观看:
注:本文发布时,在视频号中可以观看视频
006
、007
,后续将发布008
。在本文后面内容中可以同时观看视频
006
至008
。
Python环境
开始之前,按照惯例先介绍下本次内容涉及的Python环境,如下:
Python 3.8
Pandas 1.4.1
numpy 1.22.3
我是在 jupyter notebook 中运行代码的,首先引入相关 Python 库:
import pandas as pd
import numpy as np
print(f'pandas version:{pd.__version__}')
print(f'numpy version:{np.__version__}')
# pandas version:1.4.1
# numpy version:1.22.3
02常见的数据运算
创建数据
在Pandas中进行常见的数据运算,涉及到比较多的函数,不同的函数,需要有多种类型的 dataframe 来作为演示。因此,在开始之前,先创建几个 dataframe (也就是“数据框”)。文末还有其他的一些数据框,也将基于下面的数据框来建立。
关于创建数据对象的详细介绍,大家可以观看 「图解Pandas」系列的第2期视频。
创建 df
如下:
d = {
"name": [ "Lemon", "Jack", "Emma","Emma","Jack"],
"a": [80, -90, 60, 73,92],
"b": [1.2049, -3.075, 9.88,2.8,-1.833] ,
"c": [-80, 92, np.nan, 67,86],
"d":[False,True,False,True,False]
}
df = pd.DataFrame(d)
df
![1c51db9a7eb848871858e8b468c1d596.png](https://i-blog.csdnimg.cn/blog_migrate/0b09a15cdbdfe8bc30c623eb29808d61.png)
数据框 df
,为 5 行 5 列,数值类型包括字符串、整型、浮点数、布尔型,以及 NA
数值。在 Pandas
中,数值 None
,NaN
,NaT
被视为 NA
值。
创建 df1
如下:
np.random.seed(0)
df1 = pd.DataFrame(
np.random.randn(5,3),
columns=list('abc')
).round(4)
df1
![d252e34ac18f7656b6a5b37803de1648.png](https://i-blog.csdnimg.cn/blog_migrate/fc797718d237abcb05457c74f2573dcf.png)
数据框 df1
为 5 行 3 列,数值类型都是浮点数,同时有正数和负数。
创建 df2
如下:
d2 = {
"name": [ "Lemon", "Jack", "Emma","Emma","Jack","Jack"],
"a": [80, 90, 60, 73,90,90],
"c": [-80, 92, np.nan, 67,92,92],
"d":[False,True,False,True,True,True]
}
df2 = pd.DataFrame(d2)
df2
![9545b8d61116976fad34858215352865.png](https://i-blog.csdnimg.cn/blog_migrate/45b5020d257a5234e434aebfc533b8b4.png)
数据框 df2
为 6 行 4 列,数值类型包括字符串、整型、浮点数、布尔型,以及 NA
数值。
轴方向说明
对于数据框,在数据运算时,经常会涉及轴方向的设置。
这里 axis=1
就是沿着红色箭头的方向进行运算。axis='columns'
是同样的效果,简称 “1轴方向”
。axis=0
就是沿着白色箭头的方向进行运算,axis='index'
是同样的效果,简称 “0轴方向”
。
![058984fcef82970b4fc2a4529d036d63.png](https://i-blog.csdnimg.cn/blog_migrate/76a5f18aafa8be3d0db8825491d9fb11.png)
咱们需要特别的记住这两个轴方向,后面的数据运算会大量的涉及到轴方向的应用。
这里汇总了 Pandas 中比较常见的数据运算,下面将分别来介绍。
![606bb13fe782c112f5b68543edac60cb.png](https://i-blog.csdnimg.cn/blog_migrate/b341b52cf084a756595332419bd42085.png)