分享
Pandas
输入“/”快速插入内容
Pandas
用户5318
用户5318
2025年12月9日修改
24
"Data! Data! Data! I can't make bricks without clay! "——Sherlock Holmes
Pandas 是一个基于 NumPy 的模块,它的功能在于数据的筛选清洗和统计分析(very powerful),与 NumPy 模块相比,Pandas 模块应用更广泛。
1.Series
1.1 基本概念
GD
8
SH
5
XG
9
ZJ
7
dtype
int64
这是一个 Series 对象,可以想象成游戏里面排位的榜单。左边是城市,右边是 GDP。地下是 GDP 的数据类型。在数据科学里面,我们把第一列记作 index ,第二列记作 values ,底下则是 values 的 data type。
其实可以观察到,这种 data type 很像 dictionary 的特征 key-value,但略有不同的是,Series 不仅能用 index 进行访问,同时也能使用 0,1,2 等顺序进行访问(如果没有声明 index,则会默认生成从 0 开始的数字 index)
注意
:一个 Series 里的所有值,数据类型都是一样的。
1.2 创造 Series
代码块
Python
import pandas as pd
GDP = [80855, 77388, 68024, 47251, 40471]
city = ['GD','JS','SD','ZJ','HN']
info = pd.Series(GDP,index = city)
print(info)
通过调用 pandas 模块的 Series() 函数,创造了一个 Series 对象。
代码块
Plain Text
GD 80855
JS 77388
SD 68024
ZJ 47251
HN 40471
dtype: int64
Series 函数调用方式 pd.Series(列表,index = 列表)
注意
:如果不传入数据,会生成一个空的 Series。
考虑到 Series 用的也不算多,因此更多的内容留给大家自由探索。
2.DataFrame
这个大概是以后最常用到的 data type 了。因此我会详细展开。
2.1 基本概念
rank
GDP
GD
2
8
SH
4
5
XG
1
9
ZJ
3
7
这是一个 DataFrame 的基本形式,最上面是 columns,最左边是 index,其余者是 values。通过 index 和 columns 可以轻松定位 values,就像一个坐标系一样(By the way,大家可以了解一下,其实在数据科学里面也有笛卡尔积的概念)
至于 Series 与 DataFrame 两者之间的关系,通过观察,显然 DataFrame 是由相同 index 的 Series 所合并而成。在这里,To be honest,当时一瞥而过,让我在理解后面的 groupby 函数上面废了不少功夫😓
注意
:在 DataFrame 里面同一列中,值的 data type 相同即可。
同理,如果没有定义 index,那么会默认从 0 开始。
2.2 构造 DataFrame
代码块
Python
import pandas as pd
data= {'rank':[1, 2, 3, 4],'GDP':[80855, 77388, 68024, 47251]}
city= ['GD','JS','SD','ZJ']
df= pd.DataFrame(data, index=city)
print(df)